|
|
|
Автозаполнение со ссылкой на другой лист (макрос XL)
|
|||
|---|---|---|---|
|
#18+
Добрый день) Нужно как то заполнить файл строками из другого файла ссылаясь на определенный лист последнего (пока в последнем есть строки) На что можно проверить отсутсвие данных когда закончить цикл? На пустую ячейку, как это сделать... Макрос плюс ко всему работал более эффективно - он не проверял в цикле а заполнял первую строку таким образом Sheets("Лист1").Select (лист откуда берём Файл1) DialogSheets("Д1").Show e1 = DialogSheets("Д1").EditBoxes(4).Text Windows("Файл2" + e1 + ".xls").Activate Sheets("Заполняемый лист").Select Range("A2").Select ActiveCell.FormulaR1C1 = "=[Файл1.xls]Лист1!RC" Range("C2").Select ActiveCell.FormulaR1C1 = "=[Файл1.xls]Лист1!R2C2" Range("D2").Select ActiveCell.FormulaR1C1 = "=[Файл1.xls]Лист1!R2C4" Range("E2").Select ActiveCell.FormulaR1C1 = "=[Файл1.xls]Лист1!R2C5" ..... Range("A2").Select Cells.Find(What:="$", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _ xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False) _ .Activate Cells.Replace What:="$", Replacement:="", LookAt:=xlPart, SearchOrder:= _ xlByRows, MatchCase:=False Rows("2:2").Select Selection.AutoFill Destination:=Rows("2:1500"), Type:=xlFillDefault и таким образом происходило правильное заполнение первая строка (2-я) состояла из ссылок а последующие нет, но данные были верны, теперь на cells.find - вылетает - не может активизировать объект, соотв после закоментирования find\replace все строки аналогичные первой... Как сделать, подскажите пожалуйста? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2006, 15:44:37 |
|
||
|
Автозаполнение со ссылкой на другой лист (макрос XL)
|
|||
|---|---|---|---|
|
#18+
Приведенный код просто ужасен!!! Приложите файл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2006, 12:20:13 |
|
||
|
Автозаполнение со ссылкой на другой лист (макрос XL)
|
|||
|---|---|---|---|
|
#18+
Wonder2 На что можно проверить отсутсвие данных когда закончить цикл? Можно задействовать UsedRange. Пустая строчка в середине массива - не факт, что массив закончился, поэтому смотрим на всю занятую область. TotalRow = -1 With Worksheets("МойЛист") Dim r As Range Set r = .UsedRange TotalRow = r.Rows.Count End With TotalRow - вот нижний предел таблицы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2006, 12:28:00 |
|
||
|
|

start [/forum/topic.php?desktop=1&fid=61&tid=2185192]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
55ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
| others: | 246ms |
| total: | 387ms |

| 0 / 0 |
