2013-08-22 1 views
0

Я работаю над кодом javascript, который создает Excel с помощью команды ActiveXObject (IE exclusive). В какой-то момент я создать текстовое поле следующим образом:Как изменить содержимое текстового поля в excel из javascript

excel = new ActiveXObject('Excel.Application'); 
excel.Workbooks.Add(); 
excel.Application.Visible = true; 
var vFirma1 = excel.ActiveSheet.Shapes.AddTextbox(1, 200, 200, 200, 200); 
vFirma1.TextFrame.Characters.Text = "Test Box"; //Error here!!! 

В текстовом поле создается правильно, но когда я пытаюсь добавить значение, которое он бросает следующее сообщение об ошибке:

the object doesn't support this property or method

Любая помощь будет быть оцененным.

ответ

1

TextFrame.Characters - метод с необязательными параметрами. VBScript/VBA может скрыть это от программиста, но JScript не может:

excel = new ActiveXObject('Excel.Application'); 
excel.Workbooks.Add(); 
excel.Application.Visible = true; 
var vFirma1 = excel.ActiveSheet.Shapes.AddTextbox(1, 200, 200, 200, 200); 
WScript.Echo("vFirma1\t", typeof vFirma1); 
WScript.Echo("TextFrame\t", typeof vFirma1.TextFrame); 
WScript.Echo("Characters\t", typeof vFirma1.TextFrame.Characters); 
WScript.Echo("Characters()\t", typeof vFirma1.TextFrame.Characters()); 
WScript.Echo("Characters().Text\t", typeof vFirma1.TextFrame.Characters().Text); 
vFirma1.TextFrame.Characters().Text = "Test Box"; //No Error here!!! 

выход:

cscript 18390537.js 
vFirma1 object 
TextFrame  object 
Characters  unknown 
Characters()  object 
Characters().Text  string 

 Смежные вопросы

  • Нет связанных вопросов^_^