Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Макрос. Сохранение Листов в .txt в Юникоде - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Макрос. Сохранение Листов в .txt в Юникоде
Vadissimus Дата: Вторник, 25.02.2014, 14:11 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
При помощи уже существующих тем на вашем форуме пытаюсь написать макрос. Но я дилетант и ничего не выходит.

Макрос вроде не сложный должен получиться.
Смысл такой:

На работе все данные заказа (на печать пластиковых карт) веду в экселевском файле на первом листе. А второй и третий листы формируются из эти данных.
Затем эти два листа я по отдельности сохраняю в .txt с разделителями табуляции. Потом открываю их в блокноте и пересохраняю в Юникод (обязательно).
Эти файлы мне нужны, что бы подставить их в файлы в InDesigne и сделать бланки заказа и прочую документацию.

И макрос пытаюсь написать такой, что бы он автоматически сохранял в .txt (с разделителями табуляции) в Юникоде вторую и третью страницы с фиксированными именами (например, Бланк заказа и Этикетки).
То есть, что бы заполнить таблицу и нажать сочетание клавиш для запуска макроса. И все. Если он еще и Эксель сам закроет - совсем прекрасно.

Можете помочь мне в этом?
 
Ответить
СообщениеПри помощи уже существующих тем на вашем форуме пытаюсь написать макрос. Но я дилетант и ничего не выходит.

Макрос вроде не сложный должен получиться.
Смысл такой:

На работе все данные заказа (на печать пластиковых карт) веду в экселевском файле на первом листе. А второй и третий листы формируются из эти данных.
Затем эти два листа я по отдельности сохраняю в .txt с разделителями табуляции. Потом открываю их в блокноте и пересохраняю в Юникод (обязательно).
Эти файлы мне нужны, что бы подставить их в файлы в InDesigne и сделать бланки заказа и прочую документацию.

И макрос пытаюсь написать такой, что бы он автоматически сохранял в .txt (с разделителями табуляции) в Юникоде вторую и третью страницы с фиксированными именами (например, Бланк заказа и Этикетки).
То есть, что бы заполнить таблицу и нажать сочетание клавиш для запуска макроса. И все. Если он еще и Эксель сам закроет - совсем прекрасно.

Можете помочь мне в этом?

Автор - Vadissimus
Дата добавления - 25.02.2014 в 14:11
Hugo Дата: Вторник, 25.02.2014, 15:29 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3255
Репутация: 707 ±
Замечаний: 0% ±

2019
Вот такой хитрый финт:
[vba]
Код
Sub tt()
     Dim b() As Byte

     b = CreateObject("Scripting.FileSystemObject").OpenTextFile("C:\Downloads\test.txt", 1).ReadAll

     Open "C:\Downloads\testUni.txt" For Binary As #1
     Put 1, , b

End Sub
[/vba]


excel@nxt.ru
webmoney: E265281470651 Z422237915069
 
Ответить
СообщениеВот такой хитрый финт:
[vba]
Код
Sub tt()
     Dim b() As Byte

     b = CreateObject("Scripting.FileSystemObject").OpenTextFile("C:\Downloads\test.txt", 1).ReadAll

     Open "C:\Downloads\testUni.txt" For Binary As #1
     Put 1, , b

End Sub
[/vba]

Автор - Hugo
Дата добавления - 25.02.2014 в 15:29
Vadissimus Дата: Вторник, 25.02.2014, 16:54 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Hugo, спасибо. Ход интересный. specool

Дальше попробую сам.
Результат выложу ;-)


Сообщение отредактировал Vadissimus - Вторник, 25.02.2014, 16:55
 
Ответить
СообщениеHugo, спасибо. Ход интересный. specool

Дальше попробую сам.
Результат выложу ;-)

Автор - Vadissimus
Дата добавления - 25.02.2014 в 16:54
Hugo Дата: Вторник, 25.02.2014, 17:13 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3255
Репутация: 707 ±
Замечаний: 0% ±

2019
Можно было бы что-то делать сразу при создании первоначальных файлов - но так можно просто дописать в конец эти пару строк и всё. Или оформить вызов отдельной процедуры или функции, практически ничего не меняя в Вашем готовом коде.
Ну будут созданы два варианта файлов - кому они мешают? :)


excel@nxt.ru
webmoney: E265281470651 Z422237915069
 
Ответить
СообщениеМожно было бы что-то делать сразу при создании первоначальных файлов - но так можно просто дописать в конец эти пару строк и всё. Или оформить вызов отдельной процедуры или функции, практически ничего не меняя в Вашем готовом коде.
Ну будут созданы два варианта файлов - кому они мешают? :)

Автор - Hugo
Дата добавления - 25.02.2014 в 17:13
Vadissimus Дата: Четверг, 06.03.2014, 13:11 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Друзья, день добрый.

Снова полистал форум и не нашел ответа на очередные вопросы. Может ищу плохо?

1. На основе данных с первой страницы у меня генерируется вторая с данными для этикеток на коробки.
Проблема в том, что если у меня тираж 1000, а в коробке 250, то этикетки надо четыре, а если, например 5000 тираж, то коробок будет 20.
И приходится удалять лишние строки вручную.
Как написать макрос, который бы сам удалял лишние строки в зависимости от данных с первой страницы?

2. Вопрос о сохранении все тех же .txt в нужную директорию.
Например у меня такая структура папок: Имя заказчика\Название товара\Вид товара\Дата\...
а в ней: Печать, Документы, Разработка.
Нужно, что бы из .xlsm-файла, который в папке Разработка, сохранялись .txt в Документы и в Печать.
Я бы задал конкретные пути, но проблема в том, что "название товара", "имя заказчика", "вид товара" и "дата" в разных случаях разные.
Как указать путь из одной папки, в другую, находящуюся на том же уровне, что и первая, не прописывая конкретных имен папок?
Или так нельзя?

Спасибо, если поможете.
Особенно со вторым вопросом. Про первый я по крайней мере понимаю, что это возможно.
 
Ответить
СообщениеДрузья, день добрый.

Снова полистал форум и не нашел ответа на очередные вопросы. Может ищу плохо?

1. На основе данных с первой страницы у меня генерируется вторая с данными для этикеток на коробки.
Проблема в том, что если у меня тираж 1000, а в коробке 250, то этикетки надо четыре, а если, например 5000 тираж, то коробок будет 20.
И приходится удалять лишние строки вручную.
Как написать макрос, который бы сам удалял лишние строки в зависимости от данных с первой страницы?

2. Вопрос о сохранении все тех же .txt в нужную директорию.
Например у меня такая структура папок: Имя заказчика\Название товара\Вид товара\Дата\...
а в ней: Печать, Документы, Разработка.
Нужно, что бы из .xlsm-файла, который в папке Разработка, сохранялись .txt в Документы и в Печать.
Я бы задал конкретные пути, но проблема в том, что "название товара", "имя заказчика", "вид товара" и "дата" в разных случаях разные.
Как указать путь из одной папки, в другую, находящуюся на том же уровне, что и первая, не прописывая конкретных имен папок?
Или так нельзя?

Спасибо, если поможете.
Особенно со вторым вопросом. Про первый я по крайней мере понимаю, что это возможно.

Автор - Vadissimus
Дата добавления - 06.03.2014 в 13:11
Stormy Дата: Четверг, 06.03.2014, 13:38 | Сообщение № 6
Группа: Проверенные
Ранг: Обитатель
Сообщений: 357
Репутация: 12 ±
Замечаний: 0% ±

Excel 2010
Про первый я по крайней мере понимаю

Не повторяйте мои ошибки )) для каждого нового вопроса, открывайте новую тему.

По поводу второго вопроса.
Для каждого заказа существует своя папка? Если да, то сделать шаблон, в котором нужно сцепить Имя заказчика\Название товара\Вид товара\Дата\ и уже эту строчку указывать макросу при сохранение.


Место для рекламы.
 
Ответить
Сообщение
Про первый я по крайней мере понимаю

Не повторяйте мои ошибки )) для каждого нового вопроса, открывайте новую тему.

По поводу второго вопроса.
Для каждого заказа существует своя папка? Если да, то сделать шаблон, в котором нужно сцепить Имя заказчика\Название товара\Вид товара\Дата\ и уже эту строчку указывать макросу при сохранение.

Автор - Stormy
Дата добавления - 06.03.2014 в 13:38
Hugo Дата: Четверг, 06.03.2014, 13:45 | Сообщение № 7
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3255
Репутация: 707 ±
Замечаний: 0% ±

2019
1. ответ - клавишами :)
2. Попробуйте выполнить в сохранённом файле:
[vba]
Код
MsgBox CreateObject("Scripting.FileSystemObject").GetFile(ThisWorkbook.FullName).ParentFolder.ParentFolder.Path & Application.PathSeparator & "Печать"
[/vba]


excel@nxt.ru
webmoney: E265281470651 Z422237915069
 
Ответить
Сообщение1. ответ - клавишами :)
2. Попробуйте выполнить в сохранённом файле:
[vba]
Код
MsgBox CreateObject("Scripting.FileSystemObject").GetFile(ThisWorkbook.FullName).ParentFolder.ParentFolder.Path & Application.PathSeparator & "Печать"
[/vba]

Автор - Hugo
Дата добавления - 06.03.2014 в 13:45
Vadissimus Дата: Четверг, 06.03.2014, 13:59 | Сообщение № 8
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Stormy, это выполнение лишних действий.

Hugo, по первому вопросу я вас не понял)
По второму вышло сообщение с директорией где расположен файл.
Спасибо.

А можете объяснить, что в коде говорится? Ну, то есть, что есть "PathSeparator", "PatternFolder" и другие? Кто из них какую часть пути показывает?
 
Ответить
СообщениеStormy, это выполнение лишних действий.

Hugo, по первому вопросу я вас не понял)
По второму вышло сообщение с директорией где расположен файл.
Спасибо.

А можете объяснить, что в коде говорится? Ну, то есть, что есть "PathSeparator", "PatternFolder" и другие? Кто из них какую часть пути показывает?

Автор - Vadissimus
Дата добавления - 06.03.2014 в 13:59
Hugo Дата: Четверг, 06.03.2014, 14:19 | Сообщение № 9
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3255
Репутация: 707 ±
Замечаний: 0% ±

2019
По п.1 - какой ответ Вы ждёте на вопрос "Как написать макрос, который бы сам удалял лишние строки в зависимости от данных с первой страницы?" :)
Какой неконкретный вопрос, такой конкретный ответ...
И вообще - под этот вопрос нужна другая тема.

2."PathSeparator", "PatternFolder" и другие - английский стОило бы подучить... Хотя слово pattern смотрю уже знакомо :)
PathSeparator - путьразделитель, ParentFolder - родителькаталог и т.д.

"По второму вышло сообщение с директорией где расположен файл. " значит обманываете сейчас или раньше: "из .xlsm-файла, который в папке Разработка"!


excel@nxt.ru
webmoney: E265281470651 Z422237915069
 
Ответить
СообщениеПо п.1 - какой ответ Вы ждёте на вопрос "Как написать макрос, который бы сам удалял лишние строки в зависимости от данных с первой страницы?" :)
Какой неконкретный вопрос, такой конкретный ответ...
И вообще - под этот вопрос нужна другая тема.

2."PathSeparator", "PatternFolder" и другие - английский стОило бы подучить... Хотя слово pattern смотрю уже знакомо :)
PathSeparator - путьразделитель, ParentFolder - родителькаталог и т.д.

"По второму вышло сообщение с директорией где расположен файл. " значит обманываете сейчас или раньше: "из .xlsm-файла, который в папке Разработка"!

Автор - Hugo
Дата добавления - 06.03.2014 в 14:19
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!