Как посчитать количество строк в ворде
Здравствуйте Уважаемые программисты!
Скажите пожалуйста как поправить код. Ситуация такая:
В документе Word 2003 создана таблица и следующим кодом ниже получается вывести сообщение о количестве строк:
Sub bb() Const TXT$ = "произвольный текст" Dim r As Range, x Set r = Selection.Range r.Collapse Direction:=wdCollapseStart For Each x In Split(TXT) r.InsertAfter x & " " r.Collapse Direction:=wdCollapseEnd Next MsgBox r.Information(wdFirstCharacterLineNumber) End Sub
Вопрос такой: Как вывести аналогичное сообщение (поправить код), если таблица размещена внутри надписи?
______________
форматируйте код с помощью тегов!
Последний раз редактировалось Serge_Bliznykov; 13.09.2013 в 13:39 .
Количество строк на странице: ограничения
При написании документа возникла следующяя проблема — необходимо чтобы на странице было определенное количество строк. Как возможно задать данный параметр?
Стандартной возможности установить это в редакторе не существует, так как количество строк на странице зависит от множества факторов: размера шрифта, междустрочного интервала и др.
Однако можно опытным путем настроить редактор так, чтобы на каждой странице было определенное количество строк. Как я уже сказал, это настраивается междустрочным интервалом (меню Формат — Абзац ), размером шрифта (меню Формат — Шрифт ), размером полей документа (меню Файл — Параметры страницы ). Но как только будет вставлены на страницу заголовки (со своими стилями), либо колонтитулы, то соответственно, будет изменяться и количество строк.
Еще записи по вопросам использования Microsoft Word:
- 10 вопросов и ответов по редактору Word (1 часть)
- 3 способа очистки списка недавно открытых документов
- Microsoft Office: популярные команды на одной вкладке
- Ribbon XML Editor — программа редактирования интерфейса Word 2007, 2010
- Word 2007: добавляем свою вкладку и свои команды
- Word 2007: полотно, рисунки, линии
- Word 2007: смена формата сохранения файла
- Word 97 — решение проблемы с отображением символов на линейке
- Автоматизация текстового набора в Word
- Автоматическая нумерация билетов
- Автоматическая расстановка переносов
- Автоматическое сохранение всех открытых документов
- Автоматическое сохранение документа при его закрытии
- Автотекст и Word 2007
- Автотекст с последовательной нумерацией
- Белый текст на синем фоне в Word 2007
- Белый текст на синем фоне: ностальгия по DOS
- Быстрая смена ориентации страниц документа
- Быстрая смена регистра букв (слов) или их размеров
- Быстрое изменение стиля форматирования текста
- Быстрое создание нового документа на основе шаблона
- Быстрый доступ к диалоговому окну Параметры страницы
- Быстрый доступ к папке с шаблонами Word
- Ввод повторяющихся фрагментов текста в Word 2007
- Ввод часто повторяющихся фрагментов текста
Посчитать количество строк в файле и количество слов и символов в каждой строке
В текстовом файле посчитать количество строк, а также для каждой отдельной строки определить количество в ней символов и слов.
Подсчет строк:
Ввести счетчик, присвоить ему 0.
Пока не будет достигнут конец файла, считывать очередную строку файла и увеличивать счетчик на 1.
Подсчет символов в строке:
Измерять длину очередной строки с помощью встроенный в язык программирования функции.
Подсчет слов в строке:
- Ввести счетчик слов и присвоить ему 0.
- Ввести флаговую переменную и присвоить ей 0 (сигнал нахождения вне слова).
- Пока не будет достигнут конец строки:
- Если очередной символ не пробел и флаг указывает на нахождение вне слова, то увеличить счетчик слов и присвоить флаговой переменной 1 (сигнал нахождения внутри слова).
- Если же очередной символ пробел, то присвоить флагу 0.
Pascal
var
f: text;
s: string;
line, chr, wrd: word;
i: byte;
flag: boolean;
begin
assign(f,'text.txt');
reset(f);
line := 0;
while not EOF(f) do begin
readln(f,s);
write(s, ' - ');
line := line + 1;
chr := length(s);
write(chr, ' симв., ');
wrd := 0;
flag := false;
for i:=1 to chr do
if (s[i] <> ' ') and (flag = false) then begin
wrd := wrd + 1;
flag := true;
end
else
if s[i] = ' ' then flag := false;
writeln(wrd, ' сл.');
end;
close(f);
writeln(line,' стр.');
end.
Hello world! - 12 симв., 2 сл.
Привет мир! - 20 симв., 2 сл.
One, two, three - 15 симв., 3 сл.
Один, два, три - 24 симв., 3 сл.
4 стр.
Файл выполнен в среде GNU/Linux, компилятор FreePascal. Русские символы считаются за 2 символа. Например, в данном примере во второй строке 9 кириллических символа, пробел и восклицательный знак: 18 + 2 = 20 символов.
Язык Си
посчитать количество строк в файле си
#include < stdio.h>
#include < string.h>
#define N 255
main() FILE *f;
char s[N];
unsigned short line, word, flag, i;
line = 0;
f = fopen("text.txt","r");
while (fgets(s, N, f) != NULL) line += 1;
word = 0;
flag = 0;
for (i=0; i < strlen(s); i++)
if (s[i] != ' ' && flag == 0) word += 1;
flag = 1;
> else
if (s[i] == ' ') flag = 0;
printf("%s\t%ld симв., %d сл.\n",s,strlen(s),word);
>
printf("%d стр.\n", line);
fclose(f);
>
Hello world!
13 симв., 2 сл.
Привет мир!
21 симв., 2 сл.
One, two, three
16 симв., 3 сл.
Один, два, три
25 симв., 3 сл.
4 стр.Тот же «эффект», что и в Паскале: кириллический символ считается за 2.
Функция fgets() считывает строку вместе с символом перехода на новую строку. Аргумент N не позволяет считать больше указанного количества символов, но длина строки определяется по количеству считанных (т.е. фактической длиной строки).
Python
python количество строк в файле
f = open('text.txt')
line = 0
for i in f:
line += 1
flag = 0
word = 0
for j in i:
if j != ' ' and flag == 0:
word += 1
flag = 1
elif j == ' ':
flag = 0
print(i,len(i),'симв.',word,'сл.')
print(line,'стр.')
f.close()
Hello world!
13 симв. 2 сл.
Привет мир!
12 симв. 2 сл.
One, two, three
16 симв. 3 сл.
Один, два, три
15 симв. 3 сл.
4 стр.Символ перехода на новую строку учитывается.
КуМир
использовать Файлы П
алг
нач
цел f, line, word, char, in, i
лит s
line := 0
word := 0
char := 0
f := открыть на чтение ("текст.txt")
нц пока не конец файла (f)
Фввод f, s
line := line + 1
вывод s, нс
char := char + длин(s)
in := 0
нц для i от 1 до длин(s)
если s[i] <> " " и in = 0 то
word := word + 1
in := 1
иначе
если s[i] = " " то in := 0 все
все
кц
кц
закрыть(f)
вывод нс, "строк - ", line, нс
вывод "слов - ", word, нс
вывод "символов - ", char
кон
Привет, Мир!
Hello World!
5, 4 .
строк - 3
слов - 7
символов - 32Здесь считается общее количество слов и символов.
Basic-256
open "text.txt"
ln = 0
while not eof
ln = ln + 1
s$ = readline
i = 1
word = 0
flag = 0
while i c$ = mid(s$,i,1)
if c$ <> " " and flag = 0 then
word = word + 1
flag = 1
else
if c$ = " " then flag = 0
endif
i = i + 1
endwhile
print s$ + length(s$) + ", " + word
endwhile
close
print "Строк: " + ln
Hello world!
13, 2
Привет мир!
12, 2
One, two, three
16, 3
Один, два, три
15, 3
Строк: 4
Макрос подсчета количества строк в таблице
Если ваш документ содержит таблицу и вам нужно подсчитать количество строк в ней, то результат можно получить двумя способами.
Первый способ заключается в том, что вы выделяете таблицу, открываете диалоговое окно Свойства таблицы и на вкладке Строка узнаете количество строк:
Второй способ заключается в написании простейшего макроса, который подсчитывает количество строк в текущей таблице (в которой находится курсор ввода) и выводит окошко с информацией:
Откройте редактор Visual Basic (Alt+F11) и вставьте в какой-либо модуль шаблона Normal.dot следующий код:
Sub rowsCount() ' Подсчет количества строк в текущей таблице Dim n As Integer n = Selection.Tables(1).Rows.Count MsgBox prompt:="В таблице " & n & " строк", _ Title:="Подсчет строк в таблице" End Sub
Чтобы иметь быстрый доступ к этому макросу, назначьте для него сочетание клавиш или создайте кнопку на панели инструментов или в панели быстрого доступа (Word 2007).
Еще записи по вопросам использования Microsoft Word:
- 3 способа очистки списка недавно открытых документов
- Абзац с цветным фоном
- Автоматическая запись макроса
- Автоматическая расстановка переносов
- Автоматическое обновление полей при открытии документа
- Автоматическое сохранение документа при его закрытии
- Быстрая смена ориентации страниц документа
- Быстрое перемещение между открытыми документами Word
- Быстрое создание нового документа на основе шаблона
- Быстрое удаление границ у таблицы
- Быстрый ввод текста с помощью команды =rand()
- Ввод часто повторяющихся фрагментов текста
- Вставка будущей даты
- Вставка документа с книжной ориентацией в документ с альбомной ориентацией
- Вставка завтрашней даты
- Вставка изображений из указанной папки для Word 2007
- Вставка неформатированного текста
- Вставка скопированного текста в предопределенном формате
- Вставка текста с полями в нижний колонтитул
- Вставка текста с помощью кнопки
- Выделение видимой части экрана
- Двойная нумерация страниц в документе
- Дизайн границ у таблиц в редакторе Word
- Задать обтекание текстом для всех рисунков в документе
- Замена жаргонных слов в тексте