Tulostus makrolla

Pasi

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

7

734

    Vastaukset 7

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • 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 Sub

        tuolla 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 Sub

        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 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 Sub

        jos 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

    1. Riikka Purra on mukana Suomen huutokauppakeisari -sarjassa

      Suomen huutokauppakeisari on tavallisten suomalaisten ohjelma. Sarjan suosiosta kertoo se, että nyt alkaa jo 19. kausi t
      Maailman menoa
      196
      1827
    2. Kuuleppas

      ensimmäiset naissuhteet toimii miehelle eräänlaisena oppikouluna, mutta hän ei välttämättä itse ymmärrä oppineensa mitää
      Ikävä
      266
      1242
    3. Gallup: Kansalaiset eivät usko velkajarruun

      Puolet suomalaisista ei usko velkajarrun vaatimien sopeutusten toteutuvan, kertoo Iro Researchin kyselytutkimus. Kokoom
      Maailman menoa
      66
      1003
    4. Mulla ei ole Suomessa enää mitään

      4 vuotta joutuu asumaan henkisessä vankilassa. Sitten voi muuttaa takaisin ulkomaille.
      Turku
      187
      941
    5. Kuinka nainen jaksat ja voit

      Toivottavasti hyvin.
      Ikävä
      59
      884
    6. Provider miehistä..

      Tietyt miehet puhuvat ilkeästi naisista, jotka haluavat elää miehen tuloilla. Eikö? Mutta miksi tietyt miehet siitä pah
      Ikävä
      252
      812
    7. Ethän mies vielä

      luovu meistä? Haluaisin jo sun syliin.
      Ikävä
      61
      808
    8. Sinulle nainen

      En ehkä koskaan osannut sanoa tätä oikein. Minun vaikeuteni luottaa liittyi ennen kaikkea menettämisen pelkoon. Siihen
      Ikävä
      64
      788
    9. Haaveilen edelleen

      Sinusta aika ajoin
      Ikävä
      48
      769
    10. Mä oon kallistumassa

      Rikosilmoitukseen!
      Suhteet
      174
      746
    11. Sut.

      Tuhotaan. :)
      Tunteet
      93
      742
    12. Yt:t kunnassa päättyi

      Oliko nämä tarpeelliset ja ratkeaako taloushuolet näiden avulla? Lehdessä ilmoitettujen lukujen perusteella lisää on tul
      Lappajärvi
      76
      682
    13. Tiedätkö sitä

      Että sinun äänesi on ihanan pehmeä
      Ikävä
      42
      676
    14. Ethän voinut nainen tietää, että rikot rikotun

      Omaa elämää taas mietin aamuyön tunteina. En vieläkään löytänyt muistin sokkeloista ainuttakaan onnen hetkeä. Kaipuu on
      Ikävä
      72
      662
    15. Martsusta tuli leuhka

      Ja ylimielinen. Hän ei nosta persettäkään ilmaseksi . Luulempa et nämä ei tee hyvää hyvinvointivalmennuksille.... Nannal
      Kotimaiset julkkisjuorut
      203
      654
    16. Hei rakkaani.

      Kohtaaminen lähestyy. Miten teemme sen? Kumpi ottaa yhteyttä vai törmäämmekö jossain sattumalta? Tuleva vaimosi
      Ikävä
      50
      643
    17. 31
      598
    18. Tulisitpa käymään joskus vielä

      Olisi niin kiva nähdä pitkästä aikaa. Oletko vielä joskus tulossa?... Niin monet muutoksen tuulet puhaltavat, olisi lohd
      Ikävä
      24
      596
    19. Kuisla Group Oy jättänyt yrityssaneeraushakemuksen

      Samalla yrityssaneeraukseen on hakeutunut Kuisla henkilökohtaisesti ja Seinäjoen Motelli Oy, joka omistaa Sorsanpesän ki
      Seinäjoki
      26
      583
    20. Kiulu myynnissä!

      Kiulu hakee taas uutta yrittäjää. https://www.yritysporssi.fi/etela-pohjanmaa-lansi-suomi-finland/myytavat/yritykset/ma
      Ähtäri
      26
      558
    Aihe