![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 27.10.2012
Сообщений: 9
|
![]()
Добрый вечер!
Нужна помощь, задание следующее. Есть 2 файла Excel, из одно берется информация и записывается в другой. Макрос содержится в файле, в который переносится данные. Нужно считать из столбца данные G, если ячейка пустая и записать их в столбец С вместе со связанным с ним столбцом А который нужно записать в столбец В. Не могу найти как обратиться к ячейкам файла, у меня все время обращается к ячейкам самого файла, а нужно что бы обращался к ячейкам файла D:\запрос.xls Sub Test1() Open "D:\запрос.xls" For Input As #1 Заранее спасибо! |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 25.02.2012
Сообщений: 166
|
![]()
и где искали?
в автономной справке VBA - раздел Microsoft Excel Basic Reference -> Programming Concepts -> Cells And Ranges -> How to Reference Cells and Ranges нет. Код:
|
![]() |
![]() |
![]() |
#3 |
Регистрация: 27.10.2012
Сообщений: 9
|
![]()
ikki_pf, спасибо за подсказку. Только у меня теперь другая проблема, мне в ячейку А10 нового файла нужно записать значение A1 файла D:\запрос.xls, а данный код работает только с файлом запрос.xls.
Sub Кнопка1_Щелчок() Workbooks.Open Filename:="D:\запрос.xls" Range("A10").Value = Range("A1").Value End Sub |
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,170
|
![]()
Можно так (как один из многих вариантов):
Код:
webmoney: E265281470651 Z422237915069 R418926282008
|
![]() |
![]() |
![]() |
#5 |
Участник клуба
Регистрация: 02.05.2010
Сообщений: 1,390
|
![]()
Игорь, а зачем там переменная?:-)
Код:
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728 |
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,170
|
![]()
Чтоб универсальнее. В твоём варианте при запуске из стандартного модуля не накопирует ли в тот же запрос.xls? (не проверял, но сомневаюсь...)
Но если код в модуле листа (как можно подумать, глядя на название) - тогда можно и так, без переменной.
webmoney: E265281470651 Z422237915069 R418926282008
|
![]() |
![]() |
![]() |
#7 |
Регистрация: 27.10.2012
Сообщений: 9
|
![]()
Hugo121, kuklp огромное спасибо за помощь!!! У меня возник еще один вопрос, мне в программе нужно работать с массивом (до 1000 значений) у меня мигает экран... можно ли вынести открытие и закрытие файла за цикл?
Sub Кнопка1_Щелчок() For i = 2 To 10 With GetObject("D:\запрос1.xls") t = .Sheets("Лист1").Cells(i, 1).Value .Close 0 End With Cells(i + 2, 1).Value = t Next i End Sub |
![]() |
![]() |
![]() |
#8 |
Участник клуба
Регистрация: 02.05.2010
Сообщений: 1,390
|
![]()
Нужно!_____
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728 |
![]() |
![]() |
![]() |
#9 |
Регистрация: 27.10.2012
Сообщений: 9
|
![]()
И, не подскажете, что неправильно в этой конструкции
If t = "Слово" Then Cells(i + 2, 1).Value = t |
![]() |
![]() |
![]() |
#10 |
Участник клуба
Регистрация: 02.05.2010
Сообщений: 1,390
|
![]()
Не вижу end if. Попробуйте:
Код:
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728 |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как импортировать данные из текстового файла? | Androgen13 | Microsoft Office Excel | 0 | 08.08.2011 15:44 |
перенести данные из xls(exel) в mysql | Furyon | PHP | 1 | 29.07.2011 19:41 |
как сравнить данные в двух файлах .xls | SlavenGVO | Microsoft Office Excel | 6 | 07.03.2011 16:48 |
как импортировать код из файла | Lepricon69 | Общие вопросы Delphi | 19 | 11.06.2010 01:44 |