Как правильно передать Nothing в Excel через Java-/VBScript?
От: xtal  
Дата: 26.04.07 06:16
Оценка:
Гуру, подскажите пожалуйста, где собака порылась?

Задача: импортировать xml в книгу Excel. Для этого в VBA пишу:
wb.XmlImportXml xmldata, Nothing, True, wb.Sheets(1).Range("A1")

Работает.
То же самое пытаюсь сделать из VBScript — type mismatch.
Опытным путем выясняю, что не нравится именно второй параметр, т.е. Nothing. Насколько я понимаю, это из-за того, что в прототипе метода он имеет тип XmlMap, а в VBScript все переменные Variant, т.е. получается что Nothing бывают разные?! Или XmlData не приводится к Variant?

Вопрос: как надо скормить ему этот Nothing или может есть другой способ загрузить xml в отдельно взятое место на шите?
Re: Как правильно передать Nothing в Excel через Java-/VBScr
От: ZAMUNDA Земля для жалоб и предложений
Дата: 26.04.07 08:00
Оценка:
Здравствуйте, xtal, Вы писали:

X>Для этого в VBA пишу:

wb.XmlImportXml xmldata, Nothing, True, wb.Sheets(1).Range("A1")

X>То же самое пытаюсь сделать из VBScript — type mismatch. :???:
Проблема может быть только в xmldata.
Наука изощряет ум; ученье вострит память.
(c) Козьма Прутков
Re[2]: Как правильно передать Nothing в Excel через Java-/VB
От: xtal  
Дата: 26.04.07 08:09
Оценка:
ZAM>Проблема может быть только в xmldata.

xmldata в полном порядке — если создать XmlMap и подсунуть его в качестве второго параметра, механизм начинает крутиться. Проблема в том, что я не хочу создавать схему, пусть он ее по-умолчанию создаст какую нравится.
Re: Как правильно передать Nothing в Excel через Java-/VBScr
От: PA  
Дата: 26.04.07 08:10
Оценка:
Здравствуйте, xtal, Вы писали:

X>Гуру, подскажите пожалуйста, где собака порылась?


X>Задача: импортировать xml в книгу Excel. Для этого в VBA пишу:

X>
X>wb.XmlImportXml xmldata, Nothing, True, wb.Sheets(1).Range("A1")
X>

X>Работает.
X>То же самое пытаюсь сделать из VBScript — type mismatch.
X>Опытным путем выясняю, что не нравится именно второй параметр, т.е. Nothing. Насколько я понимаю, это из-за того, что в прототипе метода он имеет тип XmlMap, а в VBScript все переменные Variant, т.е. получается что Nothing бывают разные?! Или XmlData не приводится к Variant?

X>Вопрос: как надо скормить ему этот Nothing или может есть другой способ загрузить xml в отдельно взятое место на шите?


Проверил, работает пучком:

Set xl = CreateObject("excel.application")
xl.displayAlerts = False
Set wb = xl.workbooks.add()
wb.xmlImportXml _
   "<data><row><col1>1</col1><col2>2</col2></row><row><col1>3</col1><col2>4</col2></row></data>", _
   Nothing, True, xl.cells(1)
xl.displayAlerts = True
xl.visible = True
Re[2]: Как правильно передать Nothing в Excel через Java-/VB
От: Vi2 Удмуртия http://www.adem.ru
Дата: 26.04.07 08:29
Оценка:
Здравствуйте, PA, Вы писали:

PA>Проверил, работает пучком:


А так?
Set xl = CreateObject("excel.application")
xl.displayAlerts = False
Set wb = xl.workbooks.add()
Set importMap = Nothing
wb.xmlImportXml _
   "<data><row><col1>1</col1><col2>2</col2></row><row><col1>3</col1><col2>4</col2></row></data>", _
   importMap, True, wb.Sheets(1).Range("A1")
xl.displayAlerts = True
xl.visible = True

И так?
wb.xmlImportXml _
   "<data><row><col1>1</col1><col2>2</col2></row><row><col1>3</col1><col2>4</col2></row></data>", _
   (importMap), True, wb.Sheets(1).Range("A1")
Vita
Выше головы не прыгнешь, ниже земли не упадешь, дальше границы не убежишь! © КВН НГУ
Re[3]: Как правильно передать Nothing в Excel через Java-/VB
От: ZAMUNDA Земля для жалоб и предложений
Дата: 26.04.07 10:10
Оценка:
Здравствуйте, xtal, Вы писали:

ZAM>>Проблема может быть только в xmldata.

X>xmldata в полном порядке — если создать XmlMap и подсунуть его в качестве второго параметра, механизм начинает крутиться. Проблема в том, что я не хочу создавать схему, пусть он ее по-умолчанию создаст какую нравится.
Проблема в том, что из всего что ты дал мне посмотреть, неясно только содержимое xmldata, значение прочих переменных интуитивно понятны -- хотя не факт, что они мной поняты правильно.

PS: У меня телепатический модуль отсутствует. Показывай код прототипа, который ошибку выдаёт.
Наука изощряет ум; ученье вострит память.
(c) Козьма Прутков
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.