Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.05.18;
Скачать: [xml.tar.bz2];

Вниз

Ошибка "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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.044 c
15-1207163877
korneley
2008-04-02 23:17
2008.05.18
Максиму Пешкову посвящается


2-1208239581
Антон Вл.
2008-04-15 10:06
2008.05.18
ehLib


15-1207119287
Ega23
2008-04-02 10:54
2008.05.18
А вот как сделано: регистрируешься на каком-нибудь сайте,


11-1188313814
Demt
2007-08-28 19:10
2008.05.18
Динамическое создание PopupMenu


2-1208284170
smartleds
2008-04-15 22:29
2008.05.18
Подскажите как удалить массив TrackBar-ов





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский