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

453

    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. YLE Äänekosken kaupunginjohtaja saa ankaraa arvostelua

      Kaupungin johtaja saa ankaraa kritiikkiä äkkiväärästä henkilöstöjohtamisestaan. Uusin häirintäilmoitus päivätty 15 kesä
      Äänekoski
      74
      1359
    2. Euroopan lämpöennätys, 48,8, astetta, on mitattu Italian Sisiliassa

      Joko hitaampikin ymmärtää. Se on aivan liikaa. Ilmastonmuutos on totta Euroopassakin.
      Maailman menoa
      243
      1249
    3. Martina lähdössä Ibizalle

      Eikä Eskokaan tiennyt matkasta. Nyt ollaan jännän äärellä.
      Kotimaiset julkkisjuorut
      151
      1061
    4. Asiakas iski kaupassa varastelua tehneen kanveesiin.

      https://www.iltalehti.fi/kotimaa/a/33a85463-e4d5-45ed-8014-db51fe8079ec Oikein. Näin sitä pitää. Kyllä kaupoissa valtava
      Maailman menoa
      254
      1032
    5. Avustikset peruttu.

      Aettokosken ampuraan rahat otettu poekkeen valtiolle.
      Suomussalmi
      51
      755
    6. 64
      714
    7. Jos ei tiedä mitä toisesta haluaa

      Älä missään nimessä anna mitään merkkejä kiinnostuksesta. Ole haluamatta mitään. Täytyy ajatella toistakin. Ei kukaan em
      Ikävä
      62
      707
    8. Miksi mies tuntee näin?

      Eli olen mies ja ihastuin naiseen. Tykkään hänestä ja koskaan hän ei ole ollut minulle ilkeä. Silti ajoittain tunnen kui
      Ikävä
      39
      688
    9. Se nainen näyttää hyvältä vaikka painaisi 150kg

      parempi vaan jos on vähän muhkeammassa kunnossa 🤤
      Ikävä
      44
      651
    10. Määpä tiijän että rakastat

      Minua nimittäin. Samoin hei! Olet mun vastakappaleeni.
      Ikävä
      30
      607
    Aihe