Форум: "Основная";
Текущий архив: 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