
PrzemQ 09 [ Konsul ]
Pytanie dot excela.. proszę o szybką pomoc
Witam
Mam pytanie. Potrzebuję zrobić w excelu przycisk, po naciśnięciu którego, program wydrukuje mi jeden z arkuszy (inny, niż ten, w którym znajduje się przycisk - jak to zrobić?
Proszę o opisanie w miarę 'krok po kroku'
Za pomoc z góry dziękuję
Pozdrawiam
Przemek
PrzemQ 09 [ Konsul ]
UP!
ZbyszeQ [ FZ7 user ]
hmmm... można by utwożyć hiperłącze do innego arkuszu... ale żeby go automatycznie drukował... to już chyba zabawa z XML'em... jak coś wykombinuje to dam znać
albz74 [ Legend ]
Można sobie nagrać makro albo napisać kawałek kodu.
Metoda PrintOut pozwala na drukowanie zaznaczonego obszaru/okna itp itd
PrzemQ 09 [ Konsul ]
Sub drukuj()
Sheets("DEKLARACJA-DRUK").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1
End Sub
Coś takiego napisałem.. Tylko mam problem, bo dodatkowo drukuje mi 3 puste strony.
Dokument składa się z czterech arkuszy. Pierwszy to tabela, do której wpisuje się (lub wybiera z rozwijanych menu) dane. Drugi to szablon pewnego dokumentu 'urzędowego', w którym za pomocą funkcji wchodzą dane wpisane do tabeli z 1 arkuszu. Trzeci i czwarty arkusz to dane do rozwijanych menu.
Chciałbym, żeby ktoś mi napisał kod - jak to zrobić - bo coś namieszalem..
I jeszcze jedno - co dokładnie robi ta funkcja:
=WYSZUKAJ.PIONOWO('DO WYPEŁNIENIA'!G7;'Arkusz roboczy'!A23:B30;2;FAŁSZ)
pozdrawiam
PrzemQ 09 [ Konsul ]
Nie zdążyłem..
Poprawka:
Kod wygląda tak:
Sub drukuj()
Sheets("DEKLARACJA-DRUK").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1 Collate:=TRUE
End Sub
I co znaczy 'Collate:=TRUE'?
albz74 [ Legend ]
'Use Help Luke :) '
Drukują Ci się puste strony bo masz komendę drukowania zaznaczonych arkuszy - zaznacz sobie obszar który chcesz drukować i po kłopocie . Może to wyglądać np. tak:
Sub drukuj()
Sheets("DEKLARACJA-DRUK").Select
ActiveWindow.SelectedSheets.Range("A1:D18").PrintOut Copies:=1 Collate:=TRUE
End Sub
I wtedy wydrukuje Ci obszar komórek A1:D18 na zakładce DEKLARACJA-DRUK.
I jeszcze jedno - co dokładnie robi ta funkcja:
=WYSZUKAJ.PIONOWO('DO WYPEŁNIENIA'!G7;'Arkusz roboczy'!A23:B30;2;FAŁSZ)
Ta funkcja szuka w tabeli umieszczonej w komórkach A23:B30 w zakładce 'Arkusz roboczy' wartości umieszczonej w komórce G7 w zakładce 'DO WYPEŁNIENIA' i wpisuje zawartość 2 kolumny jeżeli znajdzie odniesienie do wartości w komórce G7 w tabeli.

PrzemQ 09 [ Konsul ]
Właśnie zrobiłem 'Eureka!' i jest. Rozwiązałem rto dość prymitywnie (wrzuciłem mu żeby drukował From:=1, To:=1) ale działa. Więc luz..
Teraz jeszcze z ciekawości - Co znaczy to "collate:=True"?
I drugie - może coś wymyślicie.. Potrzebuję zrobic coś takiego, żeby z poziomu tego pierwszego arkusza, w którym wpisuje dane, wydrukować plik pdf (jest ich kilka i w zależności od danych wybieram jeden, dwa z nich..) Da się to zrobić? jakiś przycisk czy coś..
Kiedyś zrobiłem to tak, że wrzuciłem te pdfy w jpg i do excela - ale wtedy ten dokument strasznie zamulał, a na słabszych kompach się wieszał..
Co proponujecie?
Wielkie dzięki za zainteresowanie:)