Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.05.18;
Скачать: CL | DM;

Вниз

Ошибка "Invalid variant operation"   Найти похожие ветки 

 
lewka-serdceed   (2008-04-16 15:10) [0]

Извините опять за беспокойство, я опять столкнулся с  Ошибка "Invalid variant operation". Но все вроде как надо переменная определена и ей присвоена таблица. Я пытаюсь задать стиль линии, у меня появляется опять эта ошибка. Все данные у меня попадают в таблицу, а линии не могу задать.
часть  кода:
w:variant;
w.ActiveDocument.Tables.item(1).Cell(StringGrid1.RowCount,1).Borders.item(-1).LineStyle.item(1);


 
tesseract ©   (2008-04-16 15:14) [1]


> w:variant;


OleVariant ?


 
lewka-serdceed   (2008-04-16 15:17) [2]

нет. В коде w:variant прописано


 
Сергей М. ©   (2008-04-16 15:43) [3]


> lewka-serdceed   (16.04.08 15:17) [2]


Вот же твоя ветка

http://delphimaster.net/view/2-1208282390/


 
lewka-serdceed   (2008-04-16 15:49) [4]

в ветке  http://delphimaster.net/view/2-1208282390/
я разобрался. но здесь то все переменные определены.


 
Dennis I. Komarov ©   (2008-04-16 15:51) [5]

> [4] lewka-serdceed   (16.04.08 15:49)

см [1]


 
Сергей М. ©   (2008-04-16 15:52) [6]


> здесь то все переменные определены.
>


И там тоже определены.
Не были бы определены - код не мог бы быть скомпилирован.
А ошибка Invalid variant operation - это ошибка времени выполнения, а не времени компиляции.

Ну раз разобрался, то показывай как ты разобрался ..


 
lewka-serdceed   (2008-04-16 15:55) [7]

вот полный код. подскажите что не так пожалуйста.
var stroka:integer;
begin
if CheckBox4.Checked=true then begin summa:=0;
w:=CreateOleObject("word.application");
w.visible:=true;
w.Documents.add("C:\Вторая сторона приложения к диплому.doc");
w.ActiveDocument.Tables.item(1).Cell(StringGrid1.RowCount,1).Borders.item(-1).LineStyle.item(1);
end;end;


 
Сергей М. ©   (2008-04-16 15:59) [8]


> lewka-serdceed   (16.04.08 15:55) [7]


Ну и какой результат ты ожидал от выполнения строки


> w.ActiveDocument.Tables.item(1).Cell(StringGrid1.RowCount,
> 1).Borders.item(-1).LineStyle.item(1);


?


 
lewka-serdceed   (2008-04-16 16:04) [9]

w.ActiveDocument.Tables.item(1).Cell(StringGrid1.RowCount,1).Borders.item(-1).LineStyle.item(1);

А что в этой строке не так?


 
Сергей М. ©   (2008-04-16 16:10) [10]


> lewka-serdceed   (16.04.08 16:04) [9]


Ты не ответил на вопрос ..


 
lewka-serdceed   (2008-04-16 16:14) [11]

В строке w.ActiveDocument.Tables.item(1).Cell(StringGrid1.RowCount,1).Borders.item(-1).LineStyle.item(1);
я пытаюсь задать линию верхней грани ячейки таблицы.


 
Сергей М. ©   (2008-04-16 16:15) [12]


> пытаюсь задать линию верхней грани ячейки таблицы


Где конкретно ?


 
tesseract ©   (2008-04-16 16:17) [13]


> нет. В коде w:variant прописано


А ты правильно пропиши. Variant у Delphi и в Com это две разницы.


 
lewka-serdceed   (2008-04-16 16:22) [14]

w.ActiveDocument.Tables.item(1).Cell(StringGrid1.RowCount,1).Borders.item(-1).LineStyle.item(1);
в документе, который открылся, я нахожу таблицу Tables.item(1) затем ячейку Cell(StringGrid1.RowCount,1), потом определяю какую линию я буду менять (верхнюю) Borders.item(-1), и тип линии LineStyle.item(1).
или я не правильно тип линии прописываю? подскажите если это так.


 
Сергей М. ©   (2008-04-16 16:27) [15]


> или я не правильно тип линии прописываю?


А как тоже самое выглядит в записанном макросе ?


 
lewka-serdceed   (2008-04-16 16:45) [16]

у меня нет макросов. я просто вставляю из StrinпGrid в готовую таблицу в шаблоне.


 
lewka-serdceed   (2008-04-16 16:55) [17]

Подскажите мне пожалуйста как мне изменить тип линии в ячейке.


 
Johnmen ©   (2008-04-16 17:23) [18]


> в документе, который открылся, я нахожу таблицу

1. Ты уверен, что желаемый документ "открылся"?
2. Ты уверен, что в документе есть таблица с указанным индексом?

Я это к тому, что за прошедшее с первого поста на эту тему время можно уже было изучить основные принципы и приемы работы с Вордом. В инете примеров, как грязи...


 
umbra ©   (2008-04-16 18:13) [19]


> w.ActiveDocument.Tables.item(1).Cell(StringGrid1.RowCount,
> 1).Borders.item(-1).LineStyle.item(1);

uses Word97

w.ActiveDocument.Tables[1].Cell(1,1).Borders[wdBorderTop].LineStyle := wdLineStyleDouble


 
Сергей М,   (2008-04-16 18:17) [20]


> ewka-serdceed   (16.04.08 16:45) [16]
>
> у меня нет макросов


У тебя нет , а Ворда есть.

ты разве не из Ворда этот код содрал бездумно ?)


 
lewka-serdceed   (2008-04-16 21:02) [21]

uses Word97

w.ActiveDocument.Tables[1].Cell(1,1).Borders[wdBorderTop].LineStyle := wdLineStyleDouble

пишет Item не является свойством.

Подскажите как мне установить тип линии.



Страницы: 1 вся ветка

Текущий архив: 2008.05.18;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.046 c
2-1208850486
AntonUSAnoV
2008-04-22 11:48
2008.05.18
обновление html страниц


15-1207194753
uniken1
2008-04-03 07:52
2008.05.18
BDS 2006


15-1207105660
Slider007
2008-04-02 07:07
2008.05.18
С днем рождения ! 2 апреля 2008 среда


3-1197548717
kudatsky
2007-12-13 15:25
2008.05.18
Как определить количество открытых DBF-файлов ?


2-1208322639
Sw
2008-04-16 09:10
2008.05.18
SQL запрос





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский