Я очень новичок в VBA и собираюсь использовать его для автоматизации некоторых своих процессов.Я просмотрел этот сайт (и другие) и, хотя я нахожу очень похожие запросы, я не могу найти тот, который точно соответствует моим потребностям.
На данный момент наиболее близкой вещью, которую я нашел, является следующее: Желание создать поле поиска и кнопку для запуска сценария VBA для запуска
У меня есть исходная папка со всеми моими данными.Мои данные хранятся в нескольких текстовых файлах.Вот пример того, как выглядят данные в файлах:
10001,1,205955.00
10001,2,196954.00
10001,3,4.60
10001,4,92353.00
10001,5,85015.00
10001,6,255.90
10001,7,804.79
10001,8,205955.00
10001,9,32465.00
В каждой строке первое число представляет собой географический код, второе число представляет собой числовой код для конкретного индикатора (не важно, для чегоЯ пытаюсь это сделать), а третье число - это значение, которое я хочу импортировать в мою таблицу.Каждый географический код связан с 2247 строками.
Я хочу использовать элемент управления окном поиска в Excel, в который я могу ввести конкретный географический код, нажать кнопку, а затем запустится макрос, который будет искать файлы для этого конкретного кода и затем импортировать все значения -в том порядке, в котором они перечислены в файле данных - в мой нужный диапазон в рабочей книге.
Пока я написал этот код.Опять же, прости меня, если это плохой код ... Я попытался изменить назначение кода из другого поста на форуме, о котором я упоминал ранее.
Я думаю, что правильно установил место импорта ... Я хочу, чтобы он импортировался в столбец C, строку 3 листа, на котором будет присутствовать поле поиска / кнопка.Но сейчас я не уверен, как бы я начал работать с аспектом импорта.Заранее благодарим всех, кто может помочь в этом вопросе.
Sub SearchFolders()
Dim FSO As Object
Dim Folder As Object
Dim File As Object
Dim TS As Object
Dim SourceFolder As String
Dim Search As String
Dim LineNumber As Long
Dim DataSh As Worksheet
SourceFolder = "C:\Users\MarMar\Desktop\Data\Census2016\DataFiles\"
Search = TextBox1.Value
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Folder = FSO.GetFolder(SourceFolder)
Set DataSh = ActiveSheet.Cells(3, 3)
For Each File In Folder.Files
Set TS = File.OpenAsTextStream()
LineNumber = 0
Do While Not TS.AtEndOfStream
LineNumber = LineNumber + 1
If InStr(TS.ReadLine, Search) Then
'Code to Import Values to DataSh ???
End If
Loop
TS.Close
Next File
End Sub