Chelovek Пользователь Сообщений: 25 |
Здравствуйте, уважаемые форумчане. Исходные данные (прикрепляю): В процессе своей работы макрос должен: Спасибо всем, кто откликнется! |
Msi2102 Пользователь Сообщений: 3137 |
С таким ТЗ Вам скорее всего в платный раздел |
New Пользователь Сообщений: 4582 |
Chelovek, потестируйте файл |
Chelovek Пользователь Сообщений: 25 |
New, |
Евгений Смирнов Пользователь Сообщений: 539 |
#5 31.01.2022 18:20:56
Самый самый небольшой макросик, который смог за сегодня найти на бескрайних просторах интернета.(Весь день искал даже на обед не пошел)
Функция открытия диалогового окна есть в файле NEW |
||||
Chelovek Пользователь Сообщений: 25 |
Евгений Смирнов
Ваш код работает. Впечатляет Ваш профессионализм. Большое спасибо за помощь! Если что — буду обращаться к Вам. |
New Пользователь Сообщений: 4582 |
#7 01.02.2022 00:00:16 Евгений Смирнов, Евгений, т.к. массив после Split создаётся с нулевым индексом, то у вас не выгружается на лист последняя строка (Ярославль_609_610_100,16%). Надо добавлять +1 при выгрузке на лист
P.S. Так же, я надеюсь, вы знаете ограничения связанные с Transpose? На примере от ТС это не критично, но кто знает, какие реальные файлы у ТС в работе Изменено: New — 01.02.2022 00:02:35 |
||
Chelovek: Спасибо за оценку моего скромного труда, но до профи мне далеко, как до Китая пешком. (Просто в некоторых вопросах, которые меня интересуют, стараюсь до конца разобраться) New: Здравствуйте. В вашей функции CountLinesInTextFileFast надо добавлять +1 т.к. она считает количество строк в файле. В моем не надо. И вообще зачем вы 2 раза читаете текстовый файл. Первый раз чтобы посчитать кол-во строк, а второй, чтобы заполнить массив. Это все можно сделать за одно считывание (В данном случае). Про ограничение Transpose знаю, уже натыкался. Это легко обойти добавить цикл.(Сделать свою Transpose) |
|
МатросНаЗебре Пользователь Сообщений: 5516 |
#9 01.02.2022 09:45:40
Жители Благовещенска никак не могут понять, является ли Евгений профи или нет ) UPD Этот край упомянул из-за близости к Китаю. Я сам не из этих мест. Изменено: МатросНаЗебре — 01.02.2022 12:14:00 |
||
МатросНаЗебре Привет жителям Благовещенска, почти земляк. Но мне подальше до Китая, чем вам. А к профи не отношусь. Если узнаете о моей профессиональной деятельности будете сильно удивлены. (Никогда не занимался программированием профессионально это честно без шуток) МатросНаЗебре А я подумал сибиряк значит земляк. Обманули меня. Изменено: Евгений Смирнов — 01.02.2022 14:16:08 |
|
New Пользователь Сообщений: 4582 |
#11 01.02.2022 11:20:33
Евгений, терять часть данных (последнюю строку) при импорте данных — не очень хорошая вещь. |
||
New Павел как ни странно у меня все нормально отрабатывает. вроде я текстовый файл из темы не правил. сейчас еще попробую скачать заново PS New Вы правы надо добавить +1. С файлом который в теме все нормально, но там последняя строка пустая. Если ее удалить, то последняя не выводится. Изменено: Евгений Смирнов — 01.02.2022 11:39:23 |
|
юнат Пользователь Сообщений: 22 |
Здравствуйте. |
Можно отслеживать дату сохранения текстового файла. |
|
Ігор Гончаренко Пользователь Сообщений: 13746 |
#15 18.10.2022 13:56:52
Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете! |
||
юнат Пользователь Сообщений: 22 |
Ігор Гончаренко, спасибо! |
Ігор Гончаренко Пользователь Сообщений: 13746 |
#17 18.10.2022 14:22:52 код нужно скопировать в стандартный модуль
Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете! |
||
юнат Пользователь Сообщений: 22 |
Код работает, только когда вручную запускаешь макрос. И данные не записываются в ячейку. В Текст.txt у меня приходят данные со считывателя рфид карт автоматически, с помощью дополнительной Изменено: юнат — 19.10.2022 09:36:28 |
пока условия вашей задачи известны только вам одному — вам самому ее и решать Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете! |
|
юнат Пользователь Сообщений: 22 |
Ігор Гончаренко, благодарю за помощь! |
что сложно? Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете! |
|
юнат Пользователь Сообщений: 22 |
Ігор Гончаренко, для меня всё непонятное — сложно. |
юнат Пользователь Сообщений: 22 |
У меня задача читать рфид карты и преобразовывать их длинный номер в десятичную цифру (например 01004C11BBE7 = 57). |
а для меня сложно угадывать что думает другой человек, особенно если он об этом только думает, но ничего не говорит (не пишет) Изменено: Ігор Гончаренко — 20.10.2022 09:47:50 Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете! |
|
Jack Famous Пользователь Сообщений: 10852 OS: Win 8.1 Корп. x64 | Excel 2016 x64: | Browser: Chrome |
#25 20.10.2022 09:45:00
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄ |
|
юнат Пользователь Сообщений: 22 |
Ігор Гончаренко, я только добавляю исходные данные, а вы уже ругаетесь что это мусор, в то же время пишите что я ничего не говорю. |
читайте название темы, подумайте о чем это Изменено: Ігор Гончаренко — 20.10.2022 12:30:27 Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете! |
|
юнат Пользователь Сообщений: 22 |
Ігор Гончаренко, большое спасибо за помощь, почти все свои задачи решил, осталась только до ком порта достучатся. |
юнат Пользователь Сообщений: 22 |
#29 20.12.2022 18:32:14 Хелп ми! Поломалось! Не работает!
Если курсор в текстовом файле спрыгивает на следующую пустую строчку, то этот вакуум копируется в ячейку ексель. |
||
New Пользователь Сообщений: 4582 |
#30 20.12.2022 19:51:31 попробуйте так
Изменено: New — 20.12.2022 20:11:14 |
||
Нет, ну ты видел?! 8 / 8 / 0 Регистрация: 21.05.2020 Сообщений: 146 |
|
1 |
|
31.08.2020, 08:17. Показов 10686. Ответов 74
Здравствуйте, 15rt63 174asd94 39047 494 39a049 0304 1a57863 1asd394 390ds47 494 390a49 0304 157863 17asd394 39047 494 39049 0304 Нужен макрос, который бы скопировал всё и вставил также по столбикам с первой ячейки первой строчки в определенный лист excel файла Листая интернет, я нашел много ссылок на такие макросы, но почему то они у меня не работают. Я их слабо понимаю, и видимо одной замены расположения txt файла недостаточно, помогите :/
0 |
Programming Эксперт 94731 / 64177 / 26122 Регистрация: 12.04.2006 Сообщений: 116,782 |
31.08.2020, 08:17 |
Ответы с готовыми решениями:
Импорт txt в Excel Импорт из Excel или Txt в БД Лотус 74 |
Часто онлайн 792 / 530 / 238 Регистрация: 09.01.2017 Сообщений: 1,820 |
|
31.08.2020, 09:51 |
2 |
blackfisk, Какой разделитель между блоками?
0 |
Narimanych 2632 / 1637 / 745 Регистрация: 23.03.2015 Сообщений: 5,143 |
||||
31.08.2020, 09:52 |
3 |
|||
blackfisk,
0 |
blackfisk Нет, ну ты видел?! 8 / 8 / 0 Регистрация: 21.05.2020 Сообщений: 146 |
||||||||
31.08.2020, 10:05 [ТС] |
4 |
|||||||
blackfisk,
Спасибо Возможно я неправильно объяснил, между числами может быть больше одного пробела Что то слепилось у меня, но он также не распределяет нормально числа по ячейкам
Миниатюры
0 |
2632 / 1637 / 745 Регистрация: 23.03.2015 Сообщений: 5,143 |
|
31.08.2020, 10:15 |
5 |
blackfisk,
Наверное лучше прикрепить текстовый файл….
0 |
Нет, ну ты видел?! 8 / 8 / 0 Регистрация: 21.05.2020 Сообщений: 146 |
|
31.08.2020, 10:44 [ТС] |
6 |
Извините, вот txt
0 |
КостяФедореев Часто онлайн 792 / 530 / 238 Регистрация: 09.01.2017 Сообщений: 1,820 |
||||||||
31.08.2020, 11:01 |
7 |
|||||||
blackfisk,
Так? Добавлено через 1 минуту
0 |
Нет, ну ты видел?! 8 / 8 / 0 Регистрация: 21.05.2020 Сообщений: 146 |
|
31.08.2020, 11:08 [ТС] |
8 |
Да, спасибо, но о5 же, макрос создает отдельный excel файл, но необходимо открыть внутри уже имеющегося файла на новом листе, или определенном листе, главное, что в самом файле, из которого запущен макрос Макрос запускается по нажатию кнопки в excel файле
0 |
Catstail Модератор 34709 / 19230 / 4040 Регистрация: 12.02.2012 Сообщений: 32,197 Записей в блоге: 13 |
||||||
31.08.2020, 11:14 |
9 |
|||||
blackfisk, у тебя данные «грязные», разделитель — то пробел, то табуляция…
Вложения
0 |
6875 / 2807 / 533 Регистрация: 19.10.2012 Сообщений: 8,562 |
|
31.08.2020, 11:14 |
10 |
Я думаю второй макрос из №4 пойдёт, только там где vbtab нужно прописать тот разделитель, что есть в файле.
0 |
Нет, ну ты видел?! 8 / 8 / 0 Регистрация: 21.05.2020 Сообщений: 146 |
|
31.08.2020, 11:32 [ТС] |
11 |
Не могу повлиять на это, к сожалению Получается ошибка :/ Миниатюры
0 |
КостяФедореев Часто онлайн 792 / 530 / 238 Регистрация: 09.01.2017 Сообщений: 1,820 |
||||
31.08.2020, 11:43 |
12 |
|||
blackfisk,
С возможностью выбора файла
0 |
Narimanych 2632 / 1637 / 745 Регистрация: 23.03.2015 Сообщений: 5,143 |
||||
31.08.2020, 11:43 |
13 |
|||
blackfisk,
0 |
blackfisk Нет, ну ты видел?! 8 / 8 / 0 Регистрация: 21.05.2020 Сообщений: 146 |
||||||||
31.08.2020, 11:51 [ТС] |
14 |
|||||||
blackfisk,
С возможностью выбора файла Копирует какие то символы, и даже не всю таблицу Добавлено через 22 секунды
blackfisk,
Пишет ошибка 400 ;/
0 |
2632 / 1637 / 745 Регистрация: 23.03.2015 Сообщений: 5,143 |
|
31.08.2020, 11:54 |
15 |
blackfisk,
0 |
blackfisk Нет, ну ты видел?! 8 / 8 / 0 Регистрация: 21.05.2020 Сообщений: 146 |
||||||||
31.08.2020, 11:55 [ТС] |
16 |
|||||||
blackfisk,
С возможностью выбора файла
Этот макрос работает, как добавить в него, чтобы он работал дальше с открывшемся окном: т.к. я слабо разбираюсь в Ваших макросах, хотя б так пусть что б работало.
0 |
Нет, ну ты видел?! 8 / 8 / 0 Регистрация: 21.05.2020 Сообщений: 146 |
|
31.08.2020, 11:56 [ТС] |
17 |
blackfisk, Указывает на строку Миниатюры
0 |
Часто онлайн 792 / 530 / 238 Регистрация: 09.01.2017 Сообщений: 1,820 |
|
31.08.2020, 12:01 |
18 |
У меня код Narimanych, работает идеально.
0 |
Narimanych 2632 / 1637 / 745 Регистрация: 23.03.2015 Сообщений: 5,143 |
||||
31.08.2020, 12:04 |
19 |
|||
blackfisk,
Добавлено через 1 минуту
0 |
blackfisk Нет, ну ты видел?! 8 / 8 / 0 Регистрация: 21.05.2020 Сообщений: 146 |
||||
31.08.2020, 12:09 [ТС] |
20 |
|||
я на чистом файле проверяю макросы, Добавлено через 3 минуты
blackfisk,
Добавлено через 1 минуту upd Скопировал, хоть и не быстро, но скопировал,
0 |
VBA Program to read a Text file line by line (Sales Data) and places on a worksheet.
Sales Data in Text File: 5 Fields [ Product, Qtr 1, Qtr 2, Qtr 3 and Qtr 4 ] and 25 Records (Incl. header)
Sales data
VBA code will read a text file and places on worksheet cells as below
VBA Code:
- Declaring variables:
Variables | Data Type | Comments |
---|---|---|
line | String | Read text file line by line |
Filename | String | Input file name (Full path) |
i | Integer | Iterator |
valueArr() | String | split the sentence by comma and store it in an array variable of type String |
'Variable declarations Dim line As String, Filename As String, i As Integer, valuesArr() As String
- Initialize “Filename” variable with full path and filename
'Text file fullPath Filename = "D:ExcelReadTextFilesales.txt" 'update your full file path i = 1
- Open input file to read text
'Open file Open Filename For Input As #2
- Read input file line by line
'Read line by line - text file While Not EOF(2) Line Input #2, line
- Split by comma and store it in valueArr(). In our example, each line has 5 values concatenated with comma.
'split the line by comma separated, assigned in an array valuesArr() = Split(line, ",")
- Add text to respective cells from valuesArr(). Read each item in an array by it’s index value
Cells(i, "A").Value = valuesArr(0) Cells(i, "B").Value = valuesArr(1) Cells(i, "C").Value = valuesArr(2) Cells(i, "D").Value = valuesArr(3) Cells(i, "E").Value = valuesArr(4)
- Increment counter i, to move next line.
i = i + 1
- Close while loop
Wend
- Close file
'Close file Close #2
Approach:
Step 1: Open Excel.
Step 2: Add a shape (Read Text File) to your worksheet .
Step 3: Right-click on “Read Text file” and “Assign Macro..”
Step 4: Select ReadTextFileLineByLine Macro
Step 5: Save your excel file as “Excel Macro-Enabled Workbook” *.xlsm
Step 6: Click “Read Text file”
Step 7: Adjust column width in your excel file.
Запись в столбец эксель — данных из txt |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
Программы и макросы Excel для работы с текстовыми файлами TXT (импорт данных из TXT, выгрузка в TXT, обработка текстовых файлов, сбор данных из TXT файлов)
-
Надстройка FillDocuments для MS Excel: общие сведения
Предназначение программы: заполнение множества документов данными из Excel нажатием одной кнопки.
Для работы программы требуется таблица Excel с данными для подстановки, и папка с шаблоном (шаблонами) документов.
В качестве шаблонов можно использовать файлы Word и Excel.
На выходе получаются заполненные файлы исходного… -
Надстройка Parser для Excel — простое и удобное решение для парсинга любых сайтов (интернет-магазинов, соцсетей, площадок объявлений) с выводом данных в таблицу Excel (формата XLS* или CSV), а также скачивания файлов.
Особенность программы — очень гибкая настройка постобработки полученных данных (множество текстовых функций, всевозможные фильтры, перекодировки, работа с переменными,… -
Функции ChangeFileCharset и ChangeTextCharset предназначены для изменения кодировки символов в текстовых файлах и строках.
Исходную и конечную (желаемую) кодировку можно задать в параметрах вызова функций.ВНИМАНИЕ: Функции чтения и сохранения текста в файл в заданной кодировке
Список доступных на вашем компьютере кодировок можно найти в реестре Windows в ветке
HKEY_CLASSES_ROOTMIMEDatabase… -
Данные функции предназначены для работы с текстовыми файлами из VBA Excel.
Используя эти функции, вы при помощи одной строки кода сможете записать текст из переменной в файл, или наоборот, загрузить содержимое текстового файла в переменную.
Подразумевается, что текстовые файлы имеют формат ANSI (он же ASCII, он же windows-1251)ВНИМАНИЕ: См. также функции чтения и сохранения текста в файл в…
-
Макрос предназначен для создания текстовых файлов в кодировке UTF-8.
Исходными данными является таблица Excel из 12 столбцов.
Сначала, макрос создаёт папку для будущих текстовых файлов.
Папка создаётся в том же каталоге, где расположена книга Excel.
Далее, для каждой строки таблицы, макрос формирует подпапку,
используя в качестве её названия текст из 7-го столбца таблицы.
И потом, когда папка… -
Надстройка предназначена для облегчения импорта данных в Excel из текстовых файлов с разделителями (например, из CSV)Пока во вложении — обычный файл Excel с нужными макросами, надстройку выложу позже
В надстройке применена функция получения ссылки на заданную пользователем ячейку.
Основой для надстройки послужила функция загрузки CSV файла в двумерный массивИспользовать функции…
-
Представляю вашему вниманию инструментарий для работы с файлами по FTPКак известно, отправить файл на FTP сервер (или загрузить файл с FTP, создать папку на FTP сервере, и т.д.) можно при помощи таких API-функций из библиотеки wininet.dll, как FtpPutFile, FtpGetFile, FtpRenameFile, FtpDeleteFile, FtpRemoveDirectory, FtpCreateDirectory, FtpFindFirstFile и т.д…
-
Если вам нужно рассылать письма из Excel,
воспользуйтесь готовым решением в виде надстройки FillDocuments
Ознакомьтесь с возможностями и способами рассылки писем из Excel,
а также с инструкцией по настройке рассылки через TheBATМакроc предназначен для автоматизированной рассылки почты из Excel.
Для рассылки используется почтовая программа TheBAT!
(подразумевается, что эта программа на… -
Функция TextFile2Array предназначена для преобразования файла CSV в двумерный массив
Очень часто при работе с текстовыми файлами (и, в частности, с файлами CSV) приходится их загружать на лист Excel, предварительно производя фильтрацию данных в этом файле.
Чтобы упростить весь процесс — от выбора файла CSV в диалоговом окне, до разбиения загруженного из файла текста в двумерный массив, и была… -
Функция предназначена для разбивки текстового файла на несколько файлов меньшего размера — в каждом из которых будет не более заданнного количества строкРазделитель строк (обычно это перевод строки — константа vbNewLine) задаётся в качестве параметра функции Delimiter$
Создаваемые файлы получают имена вида filename(1).txt, filename(2).txt и т.д.
Если задан параметр функции…
-
Программа предназначена для обработки объявлений о продаже недвижимости.
Основная задача программы — обработка списка телефоннных номеров из объявлений, с целью фильтрации этого списка.
Это позволяет выделить объявления от частных лиц,
удалив из общего списка предложения от агенств недвижимости.
Программа умеет:разносить номера из ячеек по разным столбцам или строкам…
-
Программа предназначена для формирования заданий на производство.
Исходными данными выступают таблицы Excel и файлы XML.
При конвертации таблиц происходит обработка данных и перестановка столбцов.
При запуске программа формирует панель инструментов с 6 кнопками — для обработки файлов различной структуры. -
Программа предназначена для преобразования файлов формата .HTM с объявлениями о продаже недвижимости (файлы являются результатом сохранения веб-страниц с сайтов публикации объявлений) в формат Microsoft Excel.
Программа производит анализ текста объвлений, распознаёт значения площади и этажности, отделяет второстепенные данные (комментарий) из текста объявления, преобразует различные форматы цен (… -
Макрос предназначен для загрузки данных из выбранного текстового файла.
В данном примере макрос загружает из текстового файла (формата CSV) список минимальных и максимальных температур за указанный год.
Год выбирается на листе из выпадающего списка.
На листе запуска всего 2 кнопки — первая запускает макрос загрузки данных, вторая — очищает заполненную таблицу.В демонстрационных целях в…
-
Функции WIF и RIF являются обёртками для WinAPI функций WritePrivateProfileString и GetPrivateProfileString, и предназначены для записи и чтения параметров из файлов конфигурации INI.
INI-файлы — это обычные текстовые файлы, предназначенные для хранения настроек программ.
Примерный вид структуры INI -файла:; комментарий
[Section1]
var1 = значение_1
var2 = значение_2
[access]
changed=02.06… -
Простейший текстовый редактор, который позволяет загружать документы Word из выбранной папки, и редактировать текст с возможностью последующего сохранения.
(сохраняется только текст, форматирование очищается) -
Программа позволяет загружать котировки различных валют из файлов формата .HTM, и анализировать их при различных параметрах анализа.
Все котировки разбиваются на отдельные блоки (временные диапазоны для разбивки задаются на форме настроек), и анализ производится по каждому блоку в отдельности.
Есть возможность исключить из расчётов данные за пятницу.
Изменение параметров вычисления значений BS… -
Программа предназначена для выборки данных из текстовых файлов, которые были сгенерированны инвентаризационной программой
В качестве исходных данных для макроса используются текстовые файлы, в которых находится информация о конфигурации компьютеров
(на каждый компьютер приходится по 3 файла).
Работу макроса можно разделить на следующие этапы:Выбор папки с данными по всем компьютерам…
-
Программа служит для преобразования тиковых значений котировок в свечи необходимого периода
Исходный файл в формате .csv получается в результате выгрузки (экспорта) котировок с сайта www.finam.ru (Фьючерсы ФОРТС),
и содержит большое количество строк (записей) — около 1 миллиона за 1 день.
В исходном файле CSV имеется таблица со следующими столбцами:
<TICKER> <PER> <DATE… -
Программа предназначена для создания отчётов по детализации телефонных звонков (междугородная и международная связь), последующей упаковки созданных детализаций в ZIP архив, и автоматизированной рассылки сформированных писем абонентам.
При запуске программа ищет в заданной папке исходные файлы с детализацией (упакованные в ZIP файлы DBF), и на основании из этих файлов формирует (по шаблону, с… -
Программа формирует выгрузку в CSV для выделенных строк таблицы ExcelЕсть возможность одним нажатием выделить все строки в таблице (или снять выделение со всех строк)
Реализована возможность разбиения итогового файла CSV на несколько, с заданным максимальным количеством строк.
(создаваемые файлы автоматически нумеруются)