Форум программистов, компьютерный форум, киберфорум
MS Office Word
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/8: Рейтинг темы: голосов - 8, средняя оценка - 4.50
 Аватар для sjerj
48 / 9 / 0
Регистрация: 29.11.2010
Сообщений: 149

Простой вопрос

29.11.2010, 19:51. Показов 1710. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток. Простите ламера за вопрос, но изучая (по необходимости) VBA по Камингсу бьюсь уже второй день над, я так понимаю, простой задачей:

Из одного документа Ворд считаны литерные данные которые помещены в таблицу gl(5,100) as variant.
Задача: создать новый документ в котором построчно подряд будут выведены данные этой таблицы. И вообще было бы хорошо, если бы конечный документ имел альбомную ориентацию с разбиением конечного текста на 4 колонки.
Заранее благодарен за ответ.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.11.2010, 19:51
Ответы с готовыми решениями:

Очень простой вопрос по Word
Подскажите, пожалуйста, в чем может быть причина: необходимо распечатать определенную страницу из файла, содержащего 715 страниц. Все...

Простой вопрос-простой ответ.
Народ можно ли на линкс паппи сделать разделения на пользователей как на винд. Если да то монжо ссылку на текст или видио. Заранее...

Простой вопрос-простой ответ...
°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°° Извините за столь тупенький...

13
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
30.11.2010, 09:46
Цитата Сообщение от sjerj Посмотреть сообщение
литерные данные
что сие значит?

Добавлено через 3 минуты
Цитата Сообщение от sjerj Посмотреть сообщение
с разбиением конечного текста на 4 колонки.
запутаетесь в этих колонках.
0
 Аватар для sjerj
48 / 9 / 0
Регистрация: 29.11.2010
Сообщений: 149
30.11.2010, 11:34  [ТС]
Цитата Сообщение от Busine2009 Посмотреть сообщение
что сие значит?

Добавлено через 3 минуты

запутаетесь в этих колонках.
Данные типа string

По поводу колонок, так к сожалению нужно. В таблице вбиты вопросы тестов с вариантами ответов. Для оптимального размещения лучше всего подходят 3-4 колонки.
В принципе на колонки подробить можно и потом стандартными средствами ворда. Большая проблема с первой частью вопроса т.к. Selection.TypeText почему то у меня работает криво (возможно из за моих кривых рук )
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
01.12.2010, 17:11
Цитата Сообщение от sjerj Посмотреть сообщение
Из одного документа Ворд считаны литерные данные которые помещены в таблицу gl(5,100) as variant.
как они считаны и как помещены в таблицу? И что такое gl(5,100)?
0
 Аватар для sjerj
48 / 9 / 0
Регистрация: 29.11.2010
Сообщений: 149
01.12.2010, 18:11  [ТС]
Цитата Сообщение от Busine2009 Посмотреть сообщение
как они считаны и как помещены в таблицу? И что такое gl(5,100)?
Вау!!!.. Вы уже протрезвели???...

Через VBA считаны и помещены в таблицу (gl(5,100) это имя и размерность массива (таблицы)), осталось только выдать в новый документ с соответствующими параметрами.
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
01.12.2010, 18:13
sjerj,
ещё отхожу, всего вчера выпил 3 литра охоты, до сих пор отхожу.
Т.е. есть физически таблица, но таблица эта не нужна?
0
 Аватар для sjerj
48 / 9 / 0
Регистрация: 29.11.2010
Сообщений: 149
01.12.2010, 18:19  [ТС]
Цитата Сообщение от Busine2009 Посмотреть сообщение
sjerj,
ещё отхожу, всего вчера выпил 3 литра охоты, до сих пор отхожу.
Т.е. есть физически таблица, но таблица эта не нужна?
Бедненький... Ты вообще в VBA хоть чуточку шариш?
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
01.12.2010, 18:34
sjerj,
всё увидел. Таблица - это массив.
Сделай с Selection. Вставь курсор в начало документа и просто тупо распечатай массив.

Добавлено через 12 минут
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
Option Base 1
Sub m_1()
Dim myArray(1, 1) As String
ActiveDocument.Sections(1).PageSetup.Orientation = wdOrientLandscape
ActiveDocument.Sections(1).PageSetup.TextColumns.SetCount 4
myArray(1, 1) = "Текст"
'Ставим курсор в начало документа
Selection.HomeKey Unit:=wdStory
Selection.Range = myArray(1, 1)
Selection.EndKey Unit:=wdStory
Selection.TypeParagraph
End Sub
1
 Аватар для sjerj
48 / 9 / 0
Регистрация: 29.11.2010
Сообщений: 149
01.12.2010, 18:38  [ТС]
Busine2009, Спасибо
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
01.12.2010, 18:40
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Option Base 1
Sub m_1()
Dim myArray(5, 100) As String
Dim i As Long
Dim j As Long
'Ставим курсор в начало документа
Selection.HomeKey Unit:=wdStory
ActiveDocument.Sections(1).PageSetup.Orientation = wdOrientLandscape
ActiveDocument.Sections(1).PageSetup.TextColumns.SetCount 4
For i = 1 To 5
    For j = 1 To 100
        Selection.Range = myArray(i, j)
        Selection.EndKey Unit:=wdStory
        Selection.TypeParagraph
    Next j
Next i
End Sub
1
 Аватар для sjerj
48 / 9 / 0
Регистрация: 29.11.2010
Сообщений: 149
01.12.2010, 18:47  [ТС]
Цитата Сообщение от Busine2009 Посмотреть сообщение
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Option Base 1
Sub m_1()
Dim myArray(5, 100) As String
Dim i As Long
Dim j As Long
'Ставим курсор в начало документа
Selection.HomeKey Unit:=wdStory
ActiveDocument.Sections(1).PageSetup.Orientation = wdOrientLandscape
ActiveDocument.Sections(1).PageSetup.TextColumns.SetCount 4
For i = 1 To 5
    For j = 1 To 100
        Selection.Range = myArray(i, j)
        Selection.EndKey Unit:=wdStory
        Selection.TypeParagraph
    Next j
Next i
End Sub
Получи ++
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
01.12.2010, 18:53
Обрати внимание на нумерацию элементов в массиве. По умолчанию она идёт с нуля. Поэтому если у тебя таблица (массив) обозначен как (5, 100) - это означает 6 строк и 101 столбец. Чтобы было 5 строк и 100 столбцов нужно в самом верху записать:
Visual Basic
1
Option Base 1
0
 Аватар для sjerj
48 / 9 / 0
Регистрация: 29.11.2010
Сообщений: 149
01.12.2010, 19:25  [ТС]
Цитата Сообщение от Busine2009 Посмотреть сообщение
Обрати внимание на нумерацию элементов в массиве. По умолчанию она идёт с нуля. Поэтому если у тебя таблица (массив) обозначен как (5, 100) - это означает 6 строк и 101 столбец. Чтобы было 5 строк и 100 столбцов нужно в самом верху записать:
Visual Basic
1
Option Base 1
Если как у тебя во втором случае цикл через i и j и явно указано, что они от 1 то это не имеет разницы.
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
01.12.2010, 20:11
Цитата Сообщение от sjerj Посмотреть сообщение
Если как у тебя во втором случае цикл через i и j и явно указано, что они от 1 то это не имеет разницы.
У вас тогда будут данные в нулевых элементах, которые не будут вставлены в Word.

Не по теме. Вы правильно сделали, что на форуме зарегистрировались. Я 99% знаний по VBA на форумах нашёл. Так бы ничего не знал. Я сейчас заглядываю в книги по VBA и понимаю, что по ним нереально научиться, если, конечно, нет сильной мотивации. А в книге VBA для чайников зачем-то рассматриваются 3-х мерные массивы.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
01.12.2010, 20:11
Помогаю со студенческими работами здесь

Простой вопрос
Добрый день! у меня проблема с синтаксисом обращений :( Задача такова: необходимо в форме сделать проверку сумм: сумма бюджета должна...

Простой вопрос
Вопрос, наверное, и правда простой - но поскольку я крайне редко встречаюсь с необходимостью делать что-то в HTML, то у меня нет ни книжки,...

Простой вопрос
Условие: Программа считывает двузначное число и выводит через пробел каждую цифру отдельно. Помогите разобратся. Первый день учу...

Простой вопрос
a %= 8; /* a=482%8=2 /* cout « а « '\n'; Это a=482%8=2 тут какое расчет ? что a=482*8/100 равно на 2 a %=...

Простой вопрос
Помогите, пожалуйста. Буду писать по порядку. Документы > Учёт товаров, реализации > Отгрузка товаров, продукции > Заполняю...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! в-строка - входное арифметическое выражение в инфиксной(обычной). . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru