|
|
|
Вопросы: как узнать тек. директорию и почему выводит ошибку?
|
|||
|---|---|---|---|
|
#18+
Есть два вопроса по VBA: 1) как узнать директорию, из которой запущено приложение (в моем случае экселевский файл)? CurDir, который по логике вещей должен возвращать текущую директорию, указывает на "Мои документы" 2) Почему после закрытия экселевского файла, в котором запускался макрос со следующим кодом, выдается знаменитый месседж "Программа выполнила недопустиую ошибку и сейчас будет закрыта"? А также TaskManager постоянно показывает по несколько запущенных экземпляров Excel. Set oExcel = CreateObject("Excel.Application") Set oWB = oExcel.Workbooks.Open("что-то.xls") Set oWS = oWB.Worksheets("Лист 1") ...далее читаем ячейки через oWS.Cells(a,b).Text oWB.Close oExcel.Quit ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2005, 02:43:40 |
|
||
|
Вопросы: как узнать тек. директорию и почему выводит ошибку?
|
|||
|---|---|---|---|
|
#18+
1. Директория книги в которой выполняется макрос: ThisWorkbook.Path 2. Может не нужно открывать второй экземпляр Excel: Workbooks.Open Filename:="***.xls" Sheets("Лист1").Range("A1") = 1 ActiveWindow.Close ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.08.2005, 18:55:53 |
|
||
|
Вопросы: как узнать тек. директорию и почему выводит ошибку?
|
|||
|---|---|---|---|
|
#18+
-GL-1) как узнать директорию, из которой запущено приложение (в моем случае экселевский файл)? Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2005, 09:00:51 |
|
||
|
Вопросы: как узнать тек. директорию и почему выводит ошибку?
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2005, 12:15:04 |
|
||
|
Вопросы: как узнать тек. директорию и почему выводит ошибку?
|
|||
|---|---|---|---|
|
#18+
big-dukeнеа не activeworkbook.path а thisworkbook.path, так как книг может быть открыто несколько activeworkbook - represents the workbook in the active window (the window on top); thisworkbook - represents the workbook where the current macro code is running ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2005, 13:28:12 |
|
||
|
Вопросы: как узнать тек. директорию и почему выводит ошибку?
|
|||
|---|---|---|---|
|
#18+
Вопрос по поводу обращения к ячейкам. Раньше при обращении к ячейкам новой (текущей, из которой запущен макрос) книги я указывал Cells(4,5).value, а при обращении к ячейкам книги, которую открыли, oWS.Cells(4,5).value. В новом варианте Set oWB = Workbooks.Open(ThisWorkbook.Path & "\name.xls") Set oWS = oWB.Worksheets(sheet) При обращении к ячейке в name.xls все нормально. Но когда я пытаюсь обратиться через Cells(4,5).value, идет обращение к ячейке в name.xls. Как это исправить? п.с. При закрытии приложения сообщение о недопустимой ошибке выскакивает по-прежнему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2005, 21:40:08 |
|
||
|
Вопросы: как узнать тек. директорию и почему выводит ошибку?
|
|||
|---|---|---|---|
|
#18+
Можно не меняя код добавить после открытия новой книги: Set oWB = Workbooks("name.xls") Set oWS = oWB.Worksheets(sheet) или обращаться с полным путём: Workbooks("name.xls").Sheets("Лист1").Cells(4,5) Workbooks("NEW.xls").Sheets("Лист1").Cells(4,5) или перед обращением к Сell активизировать соответствующий лист: Workbooks("name.xls").Sheets("Лист1").Activate Cells(4,5) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2005, 22:35:36 |
|
||
|
Вопросы: как узнать тек. директорию и почему выводит ошибку?
|
|||
|---|---|---|---|
|
#18+
-GL-При обращении к ячейке в name.xls все нормально. Но когда я пытаюсь обратиться через Cells(4,5).value, идет обращение к ячейке в name.xls. Как это исправить? Чего, чего? oWS.Cells(4,5).Value, oWS2.Cells(4,5).Value, oWS3.Cells(4,5).Value.... и ваши волосы будут в порядке. ВСЕГДА указывай лист от которого берется объект Range. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2005, 23:26:58 |
|
||
|
Вопросы: как узнать тек. директорию и почему выводит ошибку?
|
|||
|---|---|---|---|
|
#18+
Сообщение об ошибке приложения (о которой я говорил) следующего содержания: Программа EXCEL вызвала сбой при обращении к странице памяти в модуле <нет данных> по адресу 0000:00411790. Регистры: EAX=00000000 CS=0177 EIP=00411790 EFLGS=00010246 EBX=00000000 SS=017f ESP=0062f3a8 EBP=0062f3ec ECX=010a0564 DS=017f ESI=00411790 FS=4c8f EDX=00000003 ES=017f EDI=00000000 GS=0000 Байты по адресу CS:EIP: d0 67 40 00 7c 41 40 00 bf 0f 54 17 41 00 a8 6d Содержимое стека: 3011349f 10000000 301134d8 00000000 00000000 3011343f 010a0564 301133bc 30110d69 0000000a 00000000 00000012 00000000 00000000 018742d5 000003f8 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2005, 00:05:40 |
|
||
|
Вопросы: как узнать тек. директорию и почему выводит ошибку?
|
|||
|---|---|---|---|
|
#18+
Ну, я не знаю В чем может быть причина ошибки????? Может быть существует какая-то специальная последовательность работы с макросом? Может быть я что-то не так открываю\закрываю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2005, 20:26:28 |
|
||
|
Вопросы: как узнать тек. директорию и почему выводит ошибку?
|
|||
|---|---|---|---|
|
#18+
-GL-Ну, я не знаю В чем может быть причина ошибки????? Может быть существует какая-то специальная последовательность работы с макросом? Может быть я что-то не так открываю\закрываю? У тебя ошибка в семнадцатой строке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2005, 21:20:11 |
|
||
|
Вопросы: как узнать тек. директорию и почему выводит ошибку?
|
|||
|---|---|---|---|
|
#18+
В 17-ой строке чего? Если не секрет, откуда это видно? И как это может повлиять на неправильное закрытие экселя? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2005, 22:20:24 |
|
||
|
Вопросы: как узнать тек. директорию и почему выводит ошибку?
|
|||
|---|---|---|---|
|
#18+
-GL-В 17-ой строке чего? Если не секрет, откуда это видно? И как это может повлиять на неправильное закрытие экселя? А это я телепатически, дважды обогнув земной шар мыслью поперек и трижды вдоль, проник в твой компьютер и прочитал исходный текст твоей программы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2005, 22:50:41 |
|
||
|
|

start [/forum/topic.php?fid=61&msg=33219328&tid=2185779]: |
0ms |
get settings: |
10ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
69ms |
get tp. blocked users: |
2ms |
| others: | 241ms |
| total: | 407ms |

| 0 / 0 |
