Tulostus excelistä helpoksi?

tusaaja

Tarkoituksenani oli luoda exceliin nappi, jota painamalla avautuu ikkuna, missä kysytään mitkä sheetit halutaan tulostettavaksi (ja esikatseltavaksi). Tulostettavien sheettien valinta tapahtuisi CheckBoxien avulla, jotka ilmaisisivat tulostuvat sheetit.

Oman kokemattomuutteni takia en osaa rakentaa koodia, jonka avulla pystyisin esikatselemaan ja tulostamaan vain valittuja sheettejä.

Ongelma on lähinnä se, että en osaa tehdä koodia, joka suorittaisi sheettien valinnan/tsekkauksen, jonka jälkeen annettaisiin vain tarvittavat tulostus/esikatselu -käskyt.

Osaako joku auttaa?

2

494

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Kunde

      taulukkoon nappi ja siihen koodi

      Private Sub CommandButton1_Click()
      UserForm1.Show modal
      End Sub

      ja napin ominaisuuksiisa ruksi pois kohdasta tulosta objekti.
      lisää lomake ja lisää sinne 3 commandbuttonia ja 1 listbox oletusnimillä. Listbox1 muuta multiselect arvo ->1
      ja lisää lomakkeelle suraavat koodit

      Private Sub CommandButton1_Click()
      Dim Lista() As String
      Dim i As Integer
      Dim Laskuri As Long
      For Laskuri = 1 To ListBox1.ListCount
      If ListBox1.Selected(Laskuri - 1) Then
      i = i 1
      ReDim Preserve Lista(1 To i) As String
      Lista(i) = ThisWorkbook.Sheets(i).Name
      End If
      Next Laskuri
      If i = 0 Then
      MsgBox "et ole valinnut yhtään sivua esikatseltavaksi", vbInformation
      Exit Sub
      End If
      Me.Hide
      ThisWorkbook.Sheets(Lista).PrintPreview
      Sheets(1).Select

      Me.Show

      End Sub

      Private Sub CommandButton2_Click()
      Dim Lista() As String
      Dim i As Integer
      Dim Laskuri As Long

      For Laskuri = 1 To ListBox1.ListCount

      If ListBox1.Selected(Laskuri - 1) Then
      i = i 1
      ReDim Preserve Lista(1 To i) As String
      Lista(i) = ThisWorkbook.Sheets(i).Name
      End If
      Next Laskuri
      If i = 0 Then
      MsgBox "et ole valinnut yhtään sivua tulostettavaksi", vbInformation
      Exit Sub
      End If
      Me.Hide
      ThisWorkbook.Sheets(Lista).PrintOut
      Sheets(1).Select
      Me.Show
      End Sub
      Private Sub CommandButton3_Click()
      End
      End Sub
      Private Sub UserForm_Initialize()
      Dim i As Integer
      For i = 1 To Sheets.Count
      ListBox1.AddItem Sheets(i).Name
      Next i
      End Sub

      • tusaaja

        Paljon kiitoksia! Koodi toimii erinomaisesti.


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Nyt tuli Suomen somaleista todella ikävää faktaa

      sillä osa somalivanhemmista lähettää lapsiaan kotimaahansa kurinpitolaitoksiin, joissa heitä pahoinpidellään. Illan MOT
      Maailman menoa
      356
      4145
    2. Häirintäkohun keskellä olevalta kansanedustajalta Jani Kokolta (sd) rajua tekstiä somessa.

      https://www.is.fi/politiikka/art-2000011772322.html Ajaakohan tämä SDP:n kansanedustaja Jani Kokko oikein täysillä valoi
      Maailman menoa
      130
      3652
    3. Kommentti: oikeuslaitos korvattava SDP:n johdolla

      Näkisin että Suomessa tuomiovalta pitäisi olla demareiden johtoportaalla. Koska porvarimedia säestettynä persujen kirku
      Maailman menoa
      9
      2381
    4. Mikä siinä on ettei persuille leikkaukset käy?

      On esitetty leikkauksia mm. haitallisiin maataloustukiin, kuin myös muihin yritystukiin. Säästöjä saataisiin lisäksi lei
      Maailman menoa
      9
      2213
    5. Lindtman haluaa leikata Kela-korvauksista...oho!

      Antti Lindtman sanoo Kauppalehdessä, että vuodesta 2028 voi tulla erittäin hankala, mikäli nykyinen hallitus ei tee riit
      Maailman menoa
      149
      1854
    6. Onko kaivattusi spesiaali?

      Millä tavalla ja miten?
      Ikävä
      118
      1769
    7. Huono päivä

      Tänään on ollut tosi raskas päivä töissä. Tekis mieli itkeä ja huutaa. En jaksa just nyt mitään. Minä niin haluaisin ja
      Ikävä
      18
      1748
    8. Typeryyttä

      Se on kummallista, kun kaksi ihmistä tuntee selittämätöntä vetoa toisiinsa, mutta eivät vain pääse toistensa luokse. Mik
      Ikävä
      124
      1389
    9. Martina mukana erikoisjoukossa

      Huippurankka Erikoisjoukot-ohjelma jatkuu, Martina mukana. Kerrankin Martinalle hyvä ohjelma, hänellä on voimaa, sisua j
      Kotimaiset julkkisjuorut
      151
      1048
    10. Häneen rakastuminen oli sellaista

      että aina uskoi ja luotti että kyllä tästä vielä edetään jotenkin. Se olikin vain rakastuneen toiveajattelua kaikki. Ta
      Ikävä
      79
      915
    Aihe