Листи в екселі

Обговорюєм операційні системи, усілякій софт, комп'ютерні ігри.

Модератор: Саня

Саня
Модератор
Модератор
Повідомлень: 2100
З нами з: Сер 16 лютого 2005 р. 13:18
Стать: чоловіча
Звідки: Луцьк

Повідомлення Саня »

Якщо листів 150, то доцільніше зробити цикл. А то те копіювати-вставити задовбе поки зробиш :-).
Аватар користувача
keepo
Модератор
Модератор
Повідомлень: 1312
З нами з: Пон 15 серпня 2005 р. 12:45
Звідки: Луцьк
Контактна інформація:

Повідомлення keepo »

Згоден, але ще не факт, що назви листів в цикл так просто заженеш...
Счастье есть лишь мечта, а горе реально. /Вольтер/
Саня
Модератор
Модератор
Повідомлень: 2100
З нами з: Сер 16 лютого 2005 р. 13:18
Стать: чоловіча
Звідки: Луцьк

Повідомлення Саня »

А навіщо їх туди заганяти? До листа можна звертатися не по імені, а просто по його номеру.
Sub Макрос1()
Count = 150
For i = 1 To Count
 Sheets(1).Select
 Sheets(1).Move After:=Sheets(Count - i + 1)
Next i
End Sub

Загалом, треба не Count=150 писати, а брати кількість листів з самого документу. Можна зробити, але не хочеться цим займатися зараз.
Аватар користувача
keepo
Модератор
Модератор
Повідомлень: 1312
З нами з: Пон 15 серпня 2005 р. 12:45
Звідки: Луцьк
Контактна інформація:

Повідомлення keepo »

Хм, коли перший раз пробував назву замінити на порядковий номер, то матюкалось, зараз пішло все на ура.
Короче, з Блека пиво нам з Саньою :)
Счастье есть лишь мечта, а горе реально. /Вольтер/
Саня
Модератор
Модератор
Повідомлень: 2100
З нами з: Сер 16 лютого 2005 р. 13:18
Стать: чоловіча
Звідки: Луцьк

Повідомлення Саня »

Як так матюкалося? Ти ж в лівій частині писав Sheets("Лист5") - по назві звертався, а в правій - Sheets(1) - вже звертався по номеру. Значить, воно вже тоді працювало.

P.S. Я не програміст. Мені всерівно на чому писати :-). Можем і на VBA при потребі. А ще якщо за пиво  8) ... Другий раз в житті прийшлося.
Аватар користувача
keepo
Модератор
Модератор
Повідомлень: 1312
З нами з: Пон 15 серпня 2005 р. 12:45
Звідки: Луцьк
Контактна інформація:

Повідомлення keepo »

Дк, я то розумію, коли Блеку написав перший скрипт, то відразу попробував замінити нумерацію, а воно матюкнулось. Не став розбиратись де граблі і так залишив...
Счастье есть лишь мечта, а горе реально. /Вольтер/
Аватар користувача
VictorZ!
Учасник дискусій
Учасник дискусій
Повідомлень: 223
З нами з: П'ят 22 вересня 2006 р. 20:18
Стать: чоловіча
Звідки: Volyn reg.

Повідомлення VictorZ! »

Я колись з таким мудохався, прада, таблички були дуже прості, то я їх у ворд зберіг а потім буклетом друкував...
Саня
Модератор
Модератор
Повідомлень: 2100
З нами з: Сер 16 лютого 2005 р. 13:18
Стать: чоловіча
Звідки: Луцьк

Повідомлення Саня »

keepo, ми тут старалися, працювали, а black не те що пива, навіть дякую не написав :-(.
Аватар користувача
Black
Адміністратор
Адміністратор
Повідомлень: 5194
З нами з: Чет 27 січня 2005 р. 11:39
Стать: чоловіча
Звідки: 127.0.0.1
Контактна інформація:

Повідомлення Black »

Ги, я щойно побачив. Зараз спробую. Дякую, пацани... А то я з вчорашнього дня знову посилаю все на друк поштучно. Розмір файлика з 160-ма листами - 130Мб.  :)
Саня
Модератор
Модератор
Повідомлень: 2100
З нами з: Сер 16 лютого 2005 р. 13:18
Стать: чоловіча
Звідки: Луцьк

Повідомлення Саня »

Дядя, дядя... І нафіга було людей від роботи відривати? Ти про ті листочки згадуєш лише коли приходить пора звіти робити?
Ну як, працює?
Аватар користувача
Black
Адміністратор
Адміністратор
Повідомлень: 5194
З нами з: Чет 27 січня 2005 р. 11:39
Стать: чоловіча
Звідки: 127.0.0.1
Контактна інформація:

Повідомлення Black »

Не працює.keepo вчора розбирався, там нумерація листів йде не так. Взагалі вирву скрипт, який формує, ще йому покажу.
Аватар користувача
keepo
Модератор
Модератор
Повідомлень: 1312
З нами з: Пон 15 серпня 2005 р. 12:45
Звідки: Луцьк
Контактна інформація:

Повідомлення keepo »

Справді в тій книзі команди
sheet7.select

та

i=7
sheets(i).select

видають зовсім різні результати...
Счастье есть лишь мечта, а горе реально. /Вольтер/
Аватар користувача
ag326
Учасник форуму
Учасник форуму
Повідомлень: 69
З нами з: Вів 07 листопада 2006 р. 00:17
Звідки: @lutsk.ua

Повідомлення ag326 »

а вот так? правда будет работать только если листы называются "Лист1", "Лист2", ..., "Лист150"

Sub macros()
   n = 3
   For i = 1 To n
       s = Format(n - i + 1)
       Sheets("Лист" + s).Select
       ActiveWindow.SelectedSheets.PrintOut Copies:=1
   Next i
End Sub
Аватар користувача
Black
Адміністратор
Адміністратор
Повідомлень: 5194
З нами з: Чет 27 січня 2005 р. 11:39
Стать: чоловіча
Звідки: 127.0.0.1
Контактна інформація:

Повідомлення Black »

Листи називаються не так на жаль...
Саня
Модератор
Модератор
Повідомлень: 2100
З нами з: Сер 16 лютого 2005 р. 13:18
Стать: чоловіча
Звідки: Луцьк

Повідомлення Саня »

black сформулюй чіткіше техзавдання. Що в тебе є, як листи обзиваються, що треб отримати на виході?
До листів можна звертатися по номеру. В себе пробував - працює. Тоді назва листа ніякої ролі не грає. Тобі їх просто з Excel треба друкувати? Чи то в Excel'і їх місцями міняти?
Закрито