|
Помогите разобраться в подстановке текста
|
|||
---|---|---|---|
#18+
Здравствуйте! Возникла проблема с разными версиями Экселя. В тексте модуля есть строка Set appExcel = CreateObject("Excel.Application.12") Если запускать на 2010 оффисе - ругается сделал следующее iVersionNum = Val(Application.Version) ttt = Chr(34) + "Excel.Application." + Str(iVersionNum) + Chr(34) Set appExcel = CreateObject(ttt) не работает! Подскажите, в чем ошибка! Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2012, 11:59 |
|
Помогите разобраться в подстановке текста
|
|||
---|---|---|---|
#18+
а просто Код: vbnet 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2012, 12:22 |
|
Помогите разобраться в подстановке текста
|
|||
---|---|---|---|
#18+
Ну оно то и так работает, но тут уже чисто принципиально интересно, почему подстановка не работает? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2012, 12:30 |
|
Помогите разобраться в подстановке текста
|
|||
---|---|---|---|
#18+
А зачем там лишние кавычки добавляются? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2012, 12:38 |
|
Помогите разобраться в подстановке текста
|
|||
---|---|---|---|
#18+
Собственно без добавления кавычек тоже не работает. Я решил что может быть при подстановке текста получается Set appExcel = CreateObject(Excel.Application) пробовал и так и эдак. Результат один. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2012, 12:49 |
|
Помогите разобраться в подстановке текста
|
|||
---|---|---|---|
#18+
Ну надо хоть чуть-чуть разобраться в типах данных ошибка здесь: Код: vbnet 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2012, 12:57 |
|
Помогите разобраться в подстановке текста
|
|||
---|---|---|---|
#18+
а что разве не так? все составляющие строки имеют строковый тип данных ttt = Chr(34) + "Excel.Application." + Str(iVersionNum) + Chr(34) потом переменная ttt тоже имеет строковый тип. Если я пишу руками Set appExcel = CreateObject("Excel.Application.14") то все работает если Set appExcel = CreateObject(ttt) где ttt="Excel.Application.14" - так почему-то не работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2012, 14:17 |
|
Помогите разобраться в подстановке текста
|
|||
---|---|---|---|
#18+
Потому что есть переменная, а есть значение переменной Читай учебники (практически по любому языку программирования) пользователь1где ttt="Excel.Application.14"Это не так, в твоем случае ttt="""Excel.Application.14""" ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2012, 15:25 |
|
Помогите разобраться в подстановке текста
|
|||
---|---|---|---|
#18+
Ну, поумничать на счет учебников - это каждый может. Уже все получилось. Все работает в моем варианте, единственной ошибкой был лишний пробел между . и 14. Огромное спасибо за помощь. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2012, 16:23 |
|
Помогите разобраться в подстановке текста
|
|||
---|---|---|---|
#18+
пользователь1Ну, поумничать на счет учебников - это каждый может.поумничать на тему кавычек, нисколько не разбираясь в теме, тоже никому не возбраняется. Все зависит от того, нужен результат или нужно поумничать. Видимо, CreateObject просто игнорирует лишние кавычки. Для преобразования числа в текст надо использовать CStr ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2012, 16:29 |
|
|
start [/forum/topic.php?fid=61&msg=37975691&tid=2175358]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 138ms |
0 / 0 |