Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.03.2011, 10:33   #21
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Код:
Application.CommandBars("Cell").Reset
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 23.03.2011, 11:53   #22
0creator0
Пользователь
 
Регистрация: 13.05.2010
Сообщений: 94
По умолчанию

очень благодарен))))
0creator0 вне форума Ответить с цитированием
Старый 12.05.2011, 10:28   #23
0creator0
Пользователь
 
Регистрация: 13.05.2010
Сообщений: 94
По умолчанию Панелька

Подскажите пожалуйста как сделать ,ну или хотя бы намек в каком направлении идти, у меня есть база с именами фамилиями , как сделать мне так, что бы была у меня панелька либо список , и я на листе решения выбирая год например 1985 мне предлагался выбор из база с такой датой, когда я выбирал Например Ольга она появлялась с именем , фамилией и датой на листке решения
Вложения
Тип файла: rar Панелька.rar (2.4 Кб, 22 просмотров)
0creator0 вне форума Ответить с цитированием
Старый 16.05.2011, 16:07   #24
0creator0
Пользователь
 
Регистрация: 13.05.2010
Сообщений: 94
По умолчанию

Ну хоть в каком направление двигаться подскажите???
0creator0 вне форума Ответить с цитированием
Старый 16.05.2011, 16:18   #25
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Мне кажется, в сторону формы...
Три листбокса, при загрузке в каждом уникальные имена, фамилии и года.
При выделении в любом из них остальные перестраиваются.

Но детально не продумывал... Может есть другие варианты?

Вот, очень сырой вариант, сделал чуть иначе, не до конца, код нужно упрощать...
А вообще название темы никак не соотносится с этим вопросом, сразу внимания не обратил...
Вложения
Тип файла: rar Paneljka.rar (13.8 Кб, 27 просмотров)
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 16.05.2011 в 17:22.
Hugo121 вне форума Ответить с цитированием
Старый 25.05.2011, 11:47   #26
0creator0
Пользователь
 
Регистрация: 13.05.2010
Сообщений: 94
По умолчанию

Спасибо большое, теперь знаю хоть куда двигаться!!!
0creator0 вне форума Ответить с цитированием
Старый 19.06.2011, 19:44   #27
ntrader
 
Регистрация: 19.06.2011
Сообщений: 9
По умолчанию

добрый день. столкнулся с такой проблемой. нужно каждый день делать импорт 30-50 текстовых файлов з данными в табличной форме. из файлов нужно лишь 2 столбца, ссотв. при импорте каждого файла приходится отключать столбцы, оставлять нужное. у меня к вам вопрос. можно ли сделать импорт файлов: 1) групповым 2) по определенному шаблону - тоесть чтобы сразу импортировались нужные данные из файла, а не все подряд. если можно - прошу помощи у специалистов.
из файлов использую лишь данные по столбцам Date и POCvo.
к сожалению, в написании макросов я ноль, поэтому и обратился на профильный форум. заранее благодарю.
несколько файлов есть во вложении.
Вложения
Тип файла: txt IRM D.txt (20.5 Кб, 124 просмотров)
Тип файла: txt JPM D.txt (20.9 Кб, 111 просмотров)
Тип файла: txt NVDA D.txt (20.9 Кб, 122 просмотров)
ntrader вне форума Ответить с цитированием
Старый 19.06.2011, 19:56   #28
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Читать все текстовые файлы макросом, брать начиная со второй строки первых 10 символов и с 12-го 5 символов.
Или даже так -
1. сразу весь текст в переменную,
2. её разбить в массив по строкам,
3. создать пустой массив под этот размер
4. цикл по этому массиву данных, каждый элемент бьём в массив по vbtab
5. выбираем первых два элемента в массив результатов
6. в конце выгружаем полученный массив, берём следующий текстовый файл.

Вот сделал, рассчитано на обработку всех текстовых файлов в папке c:\Temp\ntrader\
Первоначально писал как скрипт vbs (поэтому нет объявления всех переменных - всё равно они все одного типа), но на vbs не проходит строка
ReDim b(1 To UBound(a), 1 To 2)
Интересно, почему?
Вложения
Тип файла: zip ntrader.zip (34.3 Кб, 37 просмотров)
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 19.06.2011 в 23:42.
Hugo121 вне форума Ответить с цитированием
Старый 20.06.2011, 01:51   #29
ntrader
 
Регистрация: 19.06.2011
Сообщений: 9
По умолчанию

Hugo121, большое спасибо, за сделанный файл! но можно ли внести пару поправок? Пробовал читать текс макроса, чтобы самому исправить/отредактировать - не осилил.
По столбцу Дата все отлично, а РОС вы перепутали с POCvo.
И данные из файлов не должны перемешиваться. Т.е. можно ли сделать так, чтобы, например, когда в папке 5-30 файлов, я нажимаю GO, и сразу создавалось 5-30 книг с именами этих фалов и + в них уже отфильтрованная информация? Спасибо
ntrader вне форума Ответить с цитированием
Старый 20.06.2011, 02:10   #30
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Ну с покво легко:
Код:
            For i = 1 To UBound(a)
                b(i, 1) = Split(a(i), vbTab)(0)
                b(i, 2) = Split(a(i), vbTab)(14)
            Next
Заголовок сами найдёте, где менять.
Файлы будете вручную сохранять?

Если вручную, тогда замените тот код на этот:

Код:
Sub tt()
    Const ForReading = 1
    Application.ScreenUpdating = False
    Dim FSO
    Dim TheFolder, TheFiles, AFile
    Set FSO = CreateObject("Scripting.FileSystemObject")
    Set TheFolder = FSO.GetFolder("c:\Temp\ntrader\")    'Каталог с файлами
    Set TheFiles = TheFolder.Files
    For Each AFile In TheFiles
        If UCase(FSO.GetExtensionName(AFile.Path)) = "TXT" Then
            Set objTextFile = FSO.OpenTextFile(AFile, ForReading)
            strText = objTextFile.ReadAll
            objTextFile.Close
            a = Split(strText, vbNewLine)
            ReDim b(1 To UBound(a), 1 To 2)
            For i = 1 To UBound(a)
                b(i, 1) = Split(a(i), vbTab)(0)
                b(i, 2) = Split(a(i), vbTab)(14)
            Next
            Set wb = Workbooks.Add    '# открываем новую книгу Excel
            wb.Sheets(1).Cells(1, 1) = "Date"
            wb.Sheets(1).Cells(1, 2) = "POCvo"
            wb.Sheets(1).Columns(1).NumberFormat = "@"
            wb.Sheets(1).Cells(2, 1).Resize(UBound(b), 2) = b
            wb.Sheets(1).Columns.AutoFit
        End If
    Next
    Application.ScreenUpdating = True
End Sub
Т.к. запускаем из-под Экселя, то немного изменил код - теперь всё делается в этом экземпляре Экселя.
Ещё добавил форматирование столбца с датами как текст - как даты без танцев с бубном все эти данные в даты не превращаются...
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 20.06.2011 в 09:26. Причина: добавил форматирование столбца с датами как текст
Hugo121 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Импорт TXT файлов в Excel Per4eLO Microsoft Office Excel 7 08.02.2017 19:33
импорт из txt файлов и их обработка evdss Microsoft Office Excel 7 29.11.2010 04:43
импорт данных из excel в txt и из txt в excel ESV Microsoft Office Excel 3 19.11.2010 10:29
импорт из txt, работа с массивом данных, экспорт в txt Danara Microsoft Office Excel 4 31.03.2010 00:26
Импорт из txt в MS SQL masterdela БД в Delphi 6 27.03.2010 22:06