|
Тема
|
Моля за помощ
|
|
Автор |
Hoвa () |
Публикувано | 16.03.02 08:50 |
|
Имам списък с имена, дълъг списък - на екселска таблица. Има ли начин автоматично да бъдат разпределени имената на отделни страници - 1-вото име на 1-ва страница, 2-рото на 2-ра и т.н.? Ако ги изписвам ръчно, ще ми отнеме сигурно около месец...
Благодаря иии....моля, помогнете!
:-)
| |
Тема
|
Re: Моля за помощ
[re: Hoвa]
|
|
Автор | Mишo (Нерегистриран) |
Публикувано | 16.03.02 22:05 |
|
Здрасти.
Няма директен начин да го направиш.
Все пак с макрос може да стане.
Ето една процедура написана на ВБ. Тя ще свърши работа.
Въведи я в списъка с макроси на Ексела.
След това избери колоната с имената и стартирай макроса.
(Всичко това го направи в копие на оригиналния файл!)
Когато избираш имената, не избирай цялата колона, а само полетата, където има записи.
Процедурата е валидна само, ако в една клетка са и името и фамилията на човека. В противен случай ще създаде лист за името и лист за фамилията.
Успех.
'**************************************************************
Sub AddSheets()
Dim strName as string
For Each c In Selection
If Not c.Value = "" Then
strName = c.Value
Sheets.Add
On Error GoTo ErrHandle
ActiveSheet.Name = strName
Cells(1, 1) = strName
End If
Next
Exit Sub
ErrHandle:
Resume Next
End Sub
'****************************************************************
| |
Тема
|
Благодаря!
[re: Mишo]
|
|
Автор |
Hoвa () |
Публикувано | 17.03.02 08:52 |
|
Опитах се да въведа макроса. Но ми изскача поле - "That name is not valid"
Досега не съм работила с макроси - тъмна Индия ми е - но наджапах и в това де - и се опитах с копи и пейст да запиша описанието на макроса, но десния бутон не функционира в полето за описанието - така че не мога да пейстна туй, дето си го написал. А при преписването има голяма вероятност да сбъркам някой интервал или точка или нещо друго...
Вече ми обещаха да ми направят файла, но ми се иска (много) и сама да мога...
Още веднъж Благодаря!
| |
Тема
|
Re: Благодаря!
[re: Hoвa]
|
|
Автор | Mишo (Нерегистриран) |
Публикувано | 17.03.02 12:53 |
|
Здрасти.
За да въведеш макроса е необходимо след като отвориш списъка с макроси:
1. В полето Macro Name да въведеш име. (В случая е AddSheets)
2. Да натиснеш бутон Create. Ще се отвори редактора на макроси, там ще е тялато на новия макрос със съответното име. Избираш всичко, което е написал редактора и върху него (3) пействаш процедурата, която ти пратих. След това затваряш прозореца на редактора и се връщаш в ексел.
Това е.
| |
Тема
|
Re: Благодаря!
[re: Mишo]
|
|
Автор |
Hoвa () |
Публикувано | 17.03.02 17:23 |
|
Точ в точ изпълних - и стана! Обаче - се създадоха листа (Sheets) - начъчкаха се отдолу с голяма скорост около 600 шийта!
А на мен ми трябва имената да са на отделни страници (pages), не шийтове, така че да се получи един файл от около 600 страници - на всяка страница по едно име. Щото после ще разпечатвам - и ако имам имената на отделни шийтове, не знам как да ги активирам всичките, че да се отпечатат наведнъж...
Още мъъничко, ако ми помогнеш - май ще стане!
:-))))
| |
Тема
|
Re: Благодаря!
[re: Hoвa]
|
|
Автор | Mишo (Нерегистриран) |
Публикувано | 17.03.02 21:30 |
|
Здрасти.
Разбрах какво искаш.
Необходимо е да добавиш Page Break там, където искаш да започва нова страница.
Това става ръчно. Отиваш на клетката от която започва нова страница и От менюто Insert избираш Page Break. Това добавя разделител.
Най добре е да го направиш като преди това избереш от View - Page Break preview. В този изглед документа се огражда със сини линии , които показват къде започва нова страница и тогава много лесно и нагледно само с влачене и местене на разделителите можеш да нагласиш нещата. Премахването на разделители става като ги влачиш извън зоната за печат (тя е оградена със сини линии.)
Ексел ще игнорира ръчно поставените разделители, ако в Page setup е отбелязано Fit to... . Така че го провери това!
За да се върнеш от Page Break preview в нормалени изглед от View избираш Normal.
Всичко това може да стане и автоматично, но зависи от конкретното съдържание на документа.
Май е това.
Успех.
| |
Тема
|
Re: Благодаря!
[re: Mишo]
|
|
Автор |
Hoвa () |
Публикувано | 18.03.02 06:27 |
|
Да му се не види, не мога да обяснявам, пфуууй!
След като използвах макроса, имената ми се разпределиха в отделни Sheets, на всеки Sheet по едно име. Така че, Page Break не решава проблема ми. Макросът е за AddSheets, може би трябва да е за AddPages (а може би говоря глупости!) :-)))
Как да стане, че всички имена да са в един Sheet, но разпределени на отделни страници? Сега имам 600 шийта с по едно име, а искам 1 шийт с 600 имена - всяко име на отделна страница...
Пълен аматьор съм в тези неща, затова и ти благодаря пак за търпението и съдействието!
:-)
ПП: Щото като се заинатя, съм като магаре на лед...урааа! Всичко е наред!
Ми то просто като фасул! Разбрах как да се активират шийтовете, така че да се разпечатат наведнъж, така че вече няма нужда имената да са в отделни страници! Проблема е решен значи, напълно и окончателно!
Много ми помогна, БЛАГОДАРЯ! И лек ден!
Редактирано от Hoвa на 18.03.02 06:37.
| |
Тема
|
Re:
[re: Hoвa]
|
|
Автор | Mишo (Нерегистриран) |
Публикувано | 18.03.02 12:39 |
|
Здрасти!
Добре е, че е станало, но все пак само информативно :
когато писах за Page breaks имах предвид да го използваш в стария документ, където всичките имена от списъка са на един sheet!
Отвори си оригиналния документ, където още не е използван макроса , отиди на sheetа със списъка с имена и използвай page break, така както ти казах. Ще видиш, че ще стане! т.е ще разделиш имената така, че да са на отделни страници.
Още нещо - има хоризонтални и вертикални page breaks. Вертикалните се слагат, като избереш колоната и тогава insert и тнт.
Всичко добро!
| |
|
|
|
|