Need Help Word
Прошу вашей помощи. Суть задачи такая, У меня есть файл *.rtf в нем есть 3 таблицы, мне нужно в третью таблицу в первую строку и вторую колонку вписать значение,
написал код все по мануалу, но работать отказывается пишет "Неизвестное имя".
Мой код:
Код:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Variant vApp, vDoc, vDocs, vParagraphs;
Variant vParagraph, vRange, vTables, vTable;
Variant vBookmarks,vBookmark,vSelection,vVarCell;
try
{
vApp = CreateOleObject("Word.Application");
}
catch(...)
{
Application->MessageBoxA("Не могу запустить сервер MS Word. Отчёт не может быть экспортирован.","Ошибка",MB_ICONERROR);
return;
}
vApp.OlePropertySet("Visible", true);
vDoc = vApp.OlePropertyGet("Documents");
vDoc.OleProcedure("Open","c:\\doc_5.rtf");
vDocs = vDoc.OleFunction("Item",1);
vDocs.OleProcedure("Activate");
vParagraphs=vDocs.OlePropertyGet("Paragraphs");
vParagraph=vParagraphs.OleFunction("Item",1);
vParagraph.OlePropertySet("Alignment",1);
vRange = vApp.OlePropertyGet("Range");
vTables=vApp.OlePropertyGet("Tables").
OleFunction("Item",3);
AnsiString gg = "fdff";
vVarCell=vTable.OleFunction("Cell",1,2);
vVarCell.OleFunction("Select");
vVarCell.OlePropertyGet("Range").
OlePropertySet("Text",gg.c_str());
}
{
Variant vApp, vDoc, vDocs, vParagraphs;
Variant vParagraph, vRange, vTables, vTable;
Variant vBookmarks,vBookmark,vSelection,vVarCell;
try
{
vApp = CreateOleObject("Word.Application");
}
catch(...)
{
Application->MessageBoxA("Не могу запустить сервер MS Word. Отчёт не может быть экспортирован.","Ошибка",MB_ICONERROR);
return;
}
vApp.OlePropertySet("Visible", true);
vDoc = vApp.OlePropertyGet("Documents");
vDoc.OleProcedure("Open","c:\\doc_5.rtf");
vDocs = vDoc.OleFunction("Item",1);
vDocs.OleProcedure("Activate");
vParagraphs=vDocs.OlePropertyGet("Paragraphs");
vParagraph=vParagraphs.OleFunction("Item",1);
vParagraph.OlePropertySet("Alignment",1);
vRange = vApp.OlePropertyGet("Range");
vTables=vApp.OlePropertyGet("Tables").
OleFunction("Item",3);
AnsiString gg = "fdff";
vVarCell=vTable.OleFunction("Cell",1,2);
vVarCell.OleFunction("Select");
vVarCell.OlePropertyGet("Range").
OlePropertySet("Text",gg.c_str());
}
ну ты хоть строку на которую ругается можешь указать - или нечем заняться как эксперементировать с твоим кодом?
Код:
vRange = vApp.OlePropertyGet("Range");
vTables=vApp.OlePropertyGet("Tables").
OleFunction("Item",3);
AnsiString gg = "fdff";
vVarCell=vTable.OleFunction("Cell",1,2);
vVarCell.OleFunction("Select");
vVarCell.OlePropertyGet("Range").
OlePropertySet("Text",gg.c_str());
vTables=vApp.OlePropertyGet("Tables").
OleFunction("Item",3);
AnsiString gg = "fdff";
vVarCell=vTable.OleFunction("Cell",1,2);
vVarCell.OleFunction("Select");
vVarCell.OlePropertyGet("Range").
OlePropertySet("Text",gg.c_str());
А на какой строке этого кода выдает ошибку?
Попытаться получить Range от WordApplication это сильно...