Forum elektroda.pl

Regulamin  | Punkty  | Dodaj...  | Ostatnie  | Szukaj  | Rejestracja  | Zaloguj

Ta strona używa cookie. Dowiedz się więcej o celu ich używania i zmianie ustawień cookie w przeglądarce.
Korzystając ze strony wyrażasz zgodę na używanie cookie, zgodnie z aktualnymi ustawieniami przeglądarki.

vba-excel - drukowanie dwustronne zakresów różnej wielkości z tego samego arkusz


Napisz nowy temat  Odpowiedz do tematu      Strona Główna -> Forum elektroda.pl -> Programowanie Ogólne -> Programowanie Początkujący -> vba-excel - drukowanie dwustronne zakresów różnej wielkości z tego samego arkusz
Autor
Wiadomość
JackPeterson
Poziom 4
Poziom 4


Dołączył: 20 Sie 2013
Posty: 9

Post#1 Post autora tematu 15 Lis 2013 16:55   

vba-excel - drukowanie dwustronne zakresów różnej wielkości z tego samego arkusz


Witam
Chcę wydrukować dwustronnie (duplex) dwa zakresy z pliku excela np."A1:J49" oraz "A50:U123" z "Arkusz1". Pierwszy zakres ma być wydrukowany pionowo, drugi poziomo na kartce formatu A4.Jak to zrobić?
Powrót do góry
   
Google


Google Adsense


Post# 15 Lis 2013 16:55   





Powrót do góry
   
adamas_nt
Moderator
Moderator


Dołączył: 26 Sty 2008
Posty: 3958
Miasto: Nowy Tomyśl

Post#2 15 Lis 2013 17:37   

Re: vba-excel - drukowanie dwustronne zakresów różnej wielkości z tego samego ar


JackPeterson napisał:
Jak to zrobić?

1. Nagrać makro (obszar wydruku, orientacja strony)
2. Usunąć nadmiar (interesuje nas wyłącznie 'PrintArea' oraz ''Orientation')
3. Podstawić wartości
4. Cieszyć się działaniem
Powrót do góry
   
Google


Google Adsense


Post# 15 Lis 2013 17:37   





Powrót do góry
   
JackPeterson
Poziom 4
Poziom 4


Dołączył: 20 Sie 2013
Posty: 9

Post#3 Post autora tematu 18 Lis 2013 11:30   

Re: vba-excel - drukowanie dwustronne zakresów różnej wielkości z tego samego ar


Nagrałem makro, usunąłem nadmiar kodu, ale nie cieszę się działaniem :cry:
Wiem, że robię prosty błąd, ale nie wiem gdzie. Kod, który pozostał po usunięciu nadmiaru poniżej:

Kod Visual Basic - [rozwiń]
Sub druk_dwustronny()
'
' druk_dwustronny Makro
'
ActiveSheet.PageSetup.PrintArea = "$A$1:$J$49"
With ActiveSheet.PageSetup
.Orientation = xlPortrait
End With
ActiveSheet.PageSetup.PrintArea = "$A$50:$U$123"
With ActiveSheet.PageSetup
.Orientation = xlLandscape
End With
 
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=2, Copies:=1, Collate _
:=True
End Sub


Rozumiem, dlaczego przy powyższym zapisie na wydruku są tylko ustawienia drugiego obszaru i jego orientacja wydruku (Landscape), a ja chciałbym najpierw wydrukować Portrait z pierwszego obszaru, a potem Landscape z drugiego.Korzystam z excela 2007.Gdzie robię błąd?[/code]
Powrót do góry
   
Google


Google Adsense


Post# 18 Lis 2013 11:30   





Powrót do góry
   
adamas_nt
Moderator
Moderator


Dołączył: 26 Sty 2008
Posty: 3958
Miasto: Nowy Tomyśl

Post#4 18 Lis 2013 12:06   

Re: vba-excel - drukowanie dwustronne zakresów różnej wielkości z tego samego ar


Po każdym zdefiniowaniu obszaru > wydruk. Jeśli drukarka ma duplex - ustaw sprzętowo i wyrzuć msgbox.

Kod Visual Basic - [rozwiń]
Sub druk_dwustronny()
'
' druk_dwustronny Makro
'
'ActiveSheet.PageSetup.PrintArea = "$A$1:$J$49"
With ActiveSheet.PageSetup
.Orientation = xlPortrait
.PrintArea = "$A$1:$J$49"
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1
 
MsgBox "odwróć i włóż kartkę" & Chr(10) & "naciśnij [OK] gdy gotowe"
 
.PrintArea = "$A$50:$U$123"
.Orientation = xlLandscape
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1
End With
 
'ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=2, Collate _
:=True
End Sub

Powrót do góry
   
JackPeterson
Poziom 4
Poziom 4


Dołączył: 20 Sie 2013
Posty: 9

Post#5 Post autora tematu 18 Lis 2013 12:31   

Re: vba-excel - drukowanie dwustronne zakresów różnej wielkości z tego samego ar


Drukarka jest ustawiona na duplex, wyrzuciłem msgboxa. Efekt? Pierwszy zakres wydrukował się w orientacji Portrait na pierwszej stronie pierwszej kartki.Potem zadziałał duplex i drukarka wypluła niezadrukowaną drugą stronę. Następnie otrzymałem wydruk drugiego zakresu w orientacji Landscape na pierwszej stronie drugiej kartki a dalej było tak, jak w opisie wyżej, tzn. duplex i "wyjście" z drukarki czystej strony.
Powrót do góry
   
Google


Google Adsense


Post# 18 Lis 2013 12:31   





Powrót do góry
   
adamas_nt
Moderator
Moderator


Dołączył: 26 Sty 2008
Posty: 3958
Miasto: Nowy Tomyśl

Post#6 18 Lis 2013 13:37   

Re: vba-excel - drukowanie dwustronne zakresów różnej wielkości z tego samego ar


No to kicha...
W drukarce, z którą miałem do czynienia, jakiś Sharp wielki jak lodówka, były opcje dla druku wielostronicowego: "automatic" i "wait for coś tam". Przy drugiej opcji nawet wydruk z innego programu lądował na drugiej stronie.

Pozostaje API (obsługa sterownika drukarki), ale to już wyższa półka i żadnych gwarancji.
Powrót do góry
   
JackPeterson
Poziom 4
Poziom 4


Dołączył: 20 Sie 2013
Posty: 9

Post#7 Post autora tematu 18 Lis 2013 15:15   

Re: vba-excel - drukowanie dwustronne zakresów różnej wielkości z tego samego ar


Dzięki adamas_nt za starania. Czy ktoś może pomóc?
Powrót do góry
   
Napisz nowy temat  Odpowiedz do tematu      Strona Główna -> Forum elektroda.pl -> Programowanie Ogólne -> Programowanie Początkujący -> vba-excel - drukowanie dwustronne zakresów różnej wielkości z tego samego arkusz
Strona 1 z 1



Administrator || Moderatorzy || Regulamin forum || Regulamin ogólny || Informacja o cookies || Reklama || Kontakt

Page generation time: 0.082 seconds

elektroda.pl temat RSS