Помогите, плиз, с макросом.
Нужно написать макрос, который определяет кол-во страниц в документе *.doc, и сохраняет рядом кучку файлов , тоже doc, со стоками из этих таблиц, выбранными рандомом, без возвращения.
В связи с эти вопрос : как узнать кол-во таблиц в документе?
Здравствуйте, LinkinPark, Вы писали:
LP>Нужно написать макрос, который определяет кол-во страниц в документе *.doc
А это? Это надо?
LP>В связи с эти вопрос : как узнать кол-во таблиц в документе?
ThisDocument.Tables.Count
Наука изощряет ум; ученье вострит память.
(c) Козьма Прутков
Здравствуйте, ZAMUNDA, Вы писали:
ZAM>Здравствуйте, LinkinPark, Вы писали:
LP>>Нужно написать макрос, который определяет кол-во страниц в документе *.doc ZAM>А это? Это надо?
нет, это про активный документ. Т.е. про таблицы в нём и генерирование файликов с выборками.
Ещё вопрос — как узнать размерность таблицы, а точнее кол-во рядов?
ActiveDocument.Tables(1).Rows(2) возвращает вроде не число...
Здравствуйте, LinkinPark, Вы писали:
LP>Ещё вопрос — как узнать размерность таблицы, а точнее кол-во рядов? LP>ActiveDocument.Tables(1).Rows(2) возвращает вроде не число...
Ну да он возвращает строку. А у строки есть коллекция Cells, а у каждой Cell есть свойство Range, а у Range будет значение Value (а может и сразу Value есть у Cells). Советую почитать справку…
Здравствуйте, LinkinPark, Вы писали:
LP>Ещё вопрос — как узнать размерность таблицы, а точнее кол-во рядов? LP>ActiveDocument.Tables(1).Rows(2) возвращает вроде не число...
<тагумент>.Tables(1).Rows.Count
Ты лучше ActiveDocument не используй для работы. Если надо с активным документом работать, то вешай ActiveDocument на переменную и работай с ней; если надо работать с тем доком, в котором макрос написан то ThisDocument используй.
PS: не оверквоть
Наука изощряет ум; ученье вострит память.
(c) Козьма Прутков
ок, спасибо, надеюсь последний вопрос — как создать документ с нужным именем? documents.create возвращает чтото, а примера работы с ним не нашёл..
p.s. : может книжку/литературу кто-нить знает, а то я только на excel нашёл...
Здравствуйте, LinkinPark, Вы писали:
LP>ок, спасибо, надеюсь последний вопрос — как создать документ с нужным именем? documents.create возвращает чтото, а примера работы с ним не нашёл..
Dim docMy As Word.Document
Set docMy = Application.Documents.Add()
docMy.SaveAs "{имя тагумента}"
docMy.Close False
LP>p.s. : может книжку/литературу кто-нить знает, а то я только на excel нашёл...
Ну самое простое: "Сервис->Макрос->Начать запись..." делаешь, чё те надо и сморишь чё тебе Word нагенерил. www.firststeps.ru
Наука изощряет ум; ученье вострит память.
(c) Козьма Прутков
нужна ещё помощь.
есть уже doc файл с макросом, но препод хочет чтобы он вводил число инициализации генератора случайных чисел.
так вот вопрос : как организовать это? читал про FormFields, но где его взять? как его кинуть в файл?
да, и ещё: как получить путьк к файлу, чтобы сохранять новый рядом с открытым файлом?
Здравствуйте, LinkinPark, Вы писали:
LP>есть уже doc файл с макросом, но препод хочет чтобы он вводил число инициализации генератора случайных чисел.
Да припереть этого пррепода в укромном месте и рассказать о человечности и её связи с современными тенденциями развития COM и OLE. ШУТКА!
LP>так вот вопрос : как организовать это? читал про FormFields, но где его взять? как его кинуть в файл?
Что тебе организовать конкретно надо?
Для снятия с листа данных, можешь тупо таблицу сделать, пусть значение в ячейку пишется, и в макросе к ней вязаиться. Что ещё?
LP>да, и ещё: как получить путьк к файлу, чтобы сохранять новый рядом с открытым файлом?
Сохраняй в дакументе прямо.
Наука изощряет ум; ученье вострит память.
(c) Козьма Прутков