Named range

Checkbox

Tarkoitus on luoda UserForm, jossa on checkboxeja, joiden perusteella liitetään yhteen multi area kokoelmaan useita alueita tulostusta ja esikatselua varten, kumpaakin toimintoa varten on nappi. Alueet on nimetty excelissä.

Olen kokeillut union methodia näiden nimettyjen alueiden yhdistämiseen, se toimi ihan hyvin muuten, mutta jotta voisin liittää tähän multi area kokoelmaan alueita, sen pitää olla alustettu.

Dim MyMulti as range

ActiveSheet.PageSetup.PrintTitleRows = ActiveSheet.Rows("1:12").Address

Set MyMulti = Range("Alue1")

MyMulti = Application.Union(MyMulti, Range("Alue2"))

Jne..

Miten saan tehtyä tämän niin että voin valita Alue1.. ..Alue9 välillä checkboxien kautta mitkä tai minkä sivun haluan esikatseluun tai tulostukseen?

If.. Then rakenteesta tulee aika monimutkainen, ainakin minun vaatimattomilla taidoillani.

Kiitos etukäteen loistavista ratkaisuista!

2

267

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • lomakkeen moduuliin...

      ja kaikki nimet nyt oletusnimiä ja alueet nimetty checkbox captionin nimillä työkirjassa esim Alue1, Alue2 jne

      Option Explicit
      Dim ctl As Control
      Public MyMulti As Range
      Sub MaaritaAlue()
      Set MyMulti = Nothing
      On Error Resume Next
      For Each ctl In UserForm1.Controls
      If TypeName(ctl) = "CheckBox" Then
      If ctl.Value = True Then
      If MyMulti Is Nothing Then
      Set MyMulti = Range(ctl.Caption)
      Else
      Set MyMulti = Application.Union(MyMulti, Range(ctl.Caption))
      End If
      End If
      End If
      Next
      'MsgBox MyMulti.Address
      End Sub

      Private Sub CheckBox1_Click()
      MaaritaAlue
      End Sub

      Private Sub CheckBox2_Click()
      MaaritaAlue
      End Sub

      Private Sub CheckBox3_Click()
      MaaritaAlue
      End Sub

      Private Sub CheckBox4_Click()
      MaaritaAlue
      End Sub

      Private Sub CommandButton1_Click()
      On Error GoTo virhe
      MyMulti.Select
      'Me.Hide
      'ActiveSheet.PrintPreview False
      Exit Sub
      virhe:
      MsgBox "sinun täytyy valita ainakin yksi alue tulostusta varten!", vbInformation
      End Sub

      • CheckBox

        Jep, ei se sitten ollutkaan niin monimutkainen, mun viritys oli 4 kertaa pitempi, eikä se saatana edes toiminut :)

        Kiitos ja kumarrus!


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

    Luetuimmat keskustelut

    1. Oletko tyytyväinen viime tapaamiseemme?

      Vai toivoitko sen menevän toisella tavalla? Miten?
      Ikävä
      92
      3392
    2. Nyt se sit loppuu

      Et ei enää nähdä ja yhteyttä pidetä.
      Ikävä
      62
      3097
    3. Kuoleman pelko katosi

      Olen pelännyt koko elämän ajan kuolemaa mutta yhtäkkiä kun hindut paljastivat totuuksia uskonnoista noin aloin yhtäkkiä
      Hindulaisuus
      434
      2604
    4. Myötähäpeä kun näkee sut,

      tekisit jotain ittelles. Ihan hyvällä tämä!
      Ikävä
      80
      2393
    5. Viikonloppu terveiset kaivatulle

      tähän alas ⬇️⬇️⬇️
      Ikävä
      80
      2343
    6. Jos sitä keittelis teetä

      Ja miettis mitä mies siellä jossain touhuilee... ☕️
      Ikävä
      96
      2076
    7. Toiselle puolikkaalleni

      Sinulla ei taida olla kaikki nyt ihan hyvin? Minua itketti eilen kauheasti, sinunko itkuja itkin? Kyllä kaikki selviää j
      Ikävä
      40
      2046
    8. Kuhmolainen on selvästi kepun lehti

      Kuhmolaise etukannessa oli Kuva kun Jaskalle annettiin karhu patsas.mutta kukmolaislehti oli niin kepulainen että Jaskan
      Kuhmo
      21
      1679
    9. Huomenta ........

      Huomenta 💗 Tiedän, että tuntuisit hyvälle.
      Ikävä
      12
      1676
    10. Ei mun tunteet

      ole mihinkään kadonnut. Enkä mä sua inhoa tai ole kyllästynyt. Mä ymmärsin, ettet ole kiinnostunut minusta, ainakaan sil
      Ikävä
      39
      1614
    Aihe