Missähän mahtaa olla vika kun yritän tulostaa Excel-taulukkoa alla olevalla koodilla. Esikatselu avautuu hyvin ja painike "Tulosta..." on aktiivinen mutta kun sitä klikkaa niin tulostus lähtee heti oletustulostimelle eikä tulostusdialogi avaudu ollenkaan. En siis voi vaihtaa tulostinta, muuttaa tulostettavien sivujen määrää tms. Kun esikatselun aloittaa Exelin omalla painikkeella, kaikki toimii?
Sub EsikatseleJaTulosta()
Dim Viimeinenrivi As String
Application.ScreenUpdating = False
Viimeinenrivi = Range("B65536").End(xlUp).Row
Range(Cells(2, 2), Cells(Viimeinenrivi 1, 11)).Select
ActiveWindow.Selection.PrintPreview
Range("A1").Select
Application.ScreenUpdating = True
End Sub
Tulostus makrolla
7
694
Vastaukset
viimeinenrivi palauttaa lukuarvon eikä tekstiä
muutin sen kanssa
Sub EsikatsaTulosta()
Dim Viimeinenrivi As Integer
Application.ScreenUpdating = False
Viimeinenrivi = Range("B65536").End(xlUp).Row
Range(Cells(2, 2), Cells(Viimeinenrivi 1, 11)).Select
ActiveSheet.PrintPreview
Range("A1").Select
Application.ScreenUpdating = True
End Sub- Nimetön
mutta jääkö tuo tulostettavan alueen valinta nyt tarpeettomaksi?
Jossakin ohjelmassa missä minulla oli vastaava tulostusmakro, niin ennen kuin tulostettavan alueen valinta oli koodissa mukana niin Excel halusi välttämättä tulostaa tuhatkunta tyhjää sivua vaikka tulostettavaa olisi ollut vain ensimmäiselle sivulle. Tässä nyt työn alla olevassa ohjelmassa vastaavaa ei tapahdu vaikka aluetta ei valittaisikaan. Nyt käytän Excel-97:aa ja aiemmassa ohjelmassa käytössä oli Excel 2002.
-Pasi- Nimetön kirjoitti:
mutta jääkö tuo tulostettavan alueen valinta nyt tarpeettomaksi?
Jossakin ohjelmassa missä minulla oli vastaava tulostusmakro, niin ennen kuin tulostettavan alueen valinta oli koodissa mukana niin Excel halusi välttämättä tulostaa tuhatkunta tyhjää sivua vaikka tulostettavaa olisi ollut vain ensimmäiselle sivulle. Tässä nyt työn alla olevassa ohjelmassa vastaavaa ei tapahdu vaikka aluetta ei valittaisikaan. Nyt käytän Excel-97:aa ja aiemmassa ohjelmassa käytössä oli Excel 2002.
-Pasi-määritellään tulostusalue, jolloin ei tulosteta muuta kuin se alue.Tietenkin pitää pitää huolta, että mahtuu yhdelle sivulle
Sub EsikatsaTulosta()
Dim Viimeinenrivi As Integer
Application.ScreenUpdating = False
Viimeinenrivi = Range("B65536").End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = "B2:K" & Viimeinenrivi
ActiveSheet.PrintPreview
Range("A1").Select
Application.ScreenUpdating = True
End Sub- Nimetön
kunde kirjoitti:
määritellään tulostusalue, jolloin ei tulosteta muuta kuin se alue.Tietenkin pitää pitää huolta, että mahtuu yhdelle sivulle
Sub EsikatsaTulosta()
Dim Viimeinenrivi As Integer
Application.ScreenUpdating = False
Viimeinenrivi = Range("B65536").End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = "B2:K" & Viimeinenrivi
ActiveSheet.PrintPreview
Range("A1").Select
Application.ScreenUpdating = True
End Subtuolla tavallahan se onnistuu tottakai. Kiitos
-Pasi- - Pasi
kunde kirjoitti:
määritellään tulostusalue, jolloin ei tulosteta muuta kuin se alue.Tietenkin pitää pitää huolta, että mahtuu yhdelle sivulle
Sub EsikatsaTulosta()
Dim Viimeinenrivi As Integer
Application.ScreenUpdating = False
Viimeinenrivi = Range("B65536").End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = "B2:K" & Viimeinenrivi
ActiveSheet.PrintPreview
Range("A1").Select
Application.ScreenUpdating = True
End SubSub EsikatseleJaTulosta()
Dim Viimeinenrivi As Integer
Application.ScreenUpdating = False
Viimeinenrivi = Range("B65536").End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = "B2:K" & Viimeinenrivi 1
Application.ScreenUpdating = True
ActiveSheet.PrintPreview
ActiveSheet.PageSetup.PrintArea = ""
Range("A1").Select
End Sub Pasi kirjoitti:
Sub EsikatseleJaTulosta()
Dim Viimeinenrivi As Integer
Application.ScreenUpdating = False
Viimeinenrivi = Range("B65536").End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = "B2:K" & Viimeinenrivi 1
Application.ScreenUpdating = True
ActiveSheet.PrintPreview
ActiveSheet.PageSetup.PrintArea = ""
Range("A1").Select
End Subjos haluat estää muotoilemasta asetuksia esikatselussa niin lisää FALSE esikatselu komennon perään
ActiveSheet.PrintPreview False
Tulostusalueen valinnan poisto oli ihan Ok lisäys. ;-)- Nimetön
kunde kirjoitti:
jos haluat estää muotoilemasta asetuksia esikatselussa niin lisää FALSE esikatselu komennon perään
ActiveSheet.PrintPreview False
Tulostusalueen valinnan poisto oli ihan Ok lisäys. ;-)käytännöllinen vinkki, pistän korvan taakse. (Tai itse asiassa kirjoitin koodiin kommentiksi..)
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Mies vinkkinä sulle
Jos pyytäisit kahville tai ihan mihin vaan, niin lähtisin varmasti välittämättä muista1038182- 1105733
- 2875158
- 535146
- 773803
- 583021
- 662737
Olet oikeasti ollut
Niin tärkeä mulle ja kaikki meidän väliltä on pilattu ei yksistään sinun toiminnalla vaan minun myös.222538Kuuluu raksutus tänne asti kun mietit
Pelkäätkö että särjen sydämesi vai mikä on? En mä niin tekisi mies koskaan 😘292522- 452471