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

Вниз

Адреса ячеек в Ворде   Найти похожие ветки 

 
M_a_r_i_n_a   (2005-05-26 17:38) [0]

А можно ли узнать адреса ячеек таблицы, которая в Worde? Если да, то как это сделать?
Спасибо


 
YurikGL ©   (2005-05-26 17:44) [1]


> А можно ли узнать адреса ячеек таблицы, которая в Worde?
> Если да, то как это сделать?
> Спасибо

По каким входным параметрам?


 
M_a_r_i_n_a   (2005-05-26 17:47) [2]

Допустим, даже в самом Ворде


 
YurikGL ©   (2005-05-26 17:50) [3]


> M_a_r_i_n_a   (26.05.05 17:47) [2]

1)Что понимаешь под адресом ячейки?
2)Пусть у тебя есть 10 таблиц, в каждой по 100 ячеек... адрес какой нужен?


 
M_a_r_i_n_a   (2005-05-26 17:54) [4]

Адрес ячейки, в моем понятии, это номер строки и номер столбца. Ячейка из этого и состоит. У меня одна таблица, в которой не понятно как располагаются строки и столбцы т.к. в некоторые ячейки объеденены.


 
YurikGL ©   (2005-05-26 18:02) [5]


> У меня одна таблица, в которой не понятно как располагаются
> строки и столбцы т.к. в некоторые ячейки объеденены.

И чего надо?


 
rOOse ©   (2005-05-26 18:07) [6]

Таблицы в документе Word образуют коллекцию Tables. Их количество можем узнать так:

tcount:=WordDocument1.Tables.Count;

к отдельной таблице обращаемся по ее номеру:

i:=1;
WordDocument1.Tables.Item(i) ...,

где i - целое число. В данном случае мы обращаемся к первой таблице, а вообще i может принимать значения от 1 до WordDocument1.Tables.Count. Если нам необходимо создать таблицу самим, следует поступить так:

WordDocument1.Tables.Add(WordDocument1.Range, i, j, EmptyParam, EmptyParam);

Эта таблица - единственное, что будет в документе, так как она заменяет собой указанный в числе параметров объект Range. В данном случае получаем таблицу на i строк и j столбцов. Если уже еcть какой-то текст, который надо сохранить, совершенно аналогичным образом можем указать пределы объекта Range:

a:=5;
b:=15;
WordDocument1.Tables.Add(WordDocument1.Range(a,b), i, j, EmptyParam, EmptyParam);

Переменные a и b должны быть объявлены как OleVariant.

Ну вот, теперь у нас есть таблица. Неважно, содержалась она уже в документе или мы создали ее сами. Посмотрим, что же мы с ней можем сделать. Число столбцов и строк узнаем так:

i:=1;
k:=WordDocument1.Tables.Item(i).Columns.Count;
j:=WordDocument1.Tables.Item(i).Rows.Count;

Здесь мы опять обратились к первой таблице, но можем работать с любой - надо только правильно указать ее номер. Теперь изменим ширину столбцов или высоту строк:

WordDocument1.Tables.Item(i).Columns.Width:=90;
WordDocument1.Tables.Item(i).Rows.Height:=45;

Аналогично можем задавать размеры отдельных строк и столбцов:

WordDocument1.Tables.Item(i).Columns.Item(j).Width:=90;
WordDocument1.Tables.Item(i).Rows.Item(j).Height:=45;

Здесь j - опять таки целое число, начинается от 1. Можем обратится к отдельной ячейке, прочитать или изменить содержащийся в ней текст:

WordDocument1.Tables.Item(i).Cell(j,k).Range.Text;

Здесь j и k целые переменные, изменяются от 1 до числа строк или столбцов соответственно. Присвоив данной величине строковое выражение, увидим, что оно появилось в ячейке (j,k). Несколько непривычно, но в таблицах Word на первом месте стоит именно номер строки.


 
TUser ©   (2005-05-26 20:03) [7]

> Адрес ячейки, в моем понятии, это номер строки и номер столбца

А если использовано объединение ячеек?


 
M_a_r_i_n_a   (2005-05-26 20:26) [8]

Адреса ячеек я узнала. Но когда обращаюсь к определенной ячейке через Делфи у меня всё зависает!


 
YurikGL ©   (2005-05-27 07:26) [9]


> А если использовано объединение ячеек?

Насколько помню, у нее будет номер верхней левой из объединенных ячеек.


> Но когда обращаюсь к определенной ячейке через Делфи у меня
> всё зависает!

Как обращаешься?



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

Форум: "Основная";
Текущий архив: 2005.06.14;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.032 c
1-1117282425
PIF
2005-05-28 16:13
2005.06.14
Компиляция res файла при старте приложения


8-1109702013
Romantic
2005-03-01 21:33
2005.06.14
Громадный TImage


14-1116835859
vidiv
2005-05-23 12:10
2005.06.14
DOS атака - сильная вещь...


14-1116828369
vidiv
2005-05-23 10:06
2005.06.14
Перекомпилировать весь VCL


9-1109845708
Alek Aaz
2005-03-03 13:28
2005.06.14
"Потрошитель" GTA. Парсер и конвертор dff и txd файлов.





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