VBA User Form ja CheckBoxit

grunz

Miten saan Exelin VBA User Formissa toimimaan niin, että kun mulla on useampi check box, niin aina kun painaa check boxin valituksi, niin viereiseen labeliin tulee tekstiä.
Olen saanut niin että kun yhden boxin painaa valituksi, niin teksti ilmestyy labeliin, mutta ongelma ilmeneekin siinä vaiheessa kun valitsen kaksi check boxia aktiiviseksi. Kuinka saan näkymään sekä ekan boxin tekstin labelissä, sekä tokan boxin tekstin?

Esimerkkinä vaikka, että minulla on check boxeissa valittava mantereita ja haluan, että labeliin tulee näkyviin valittuun mantetereeseen kuuluvat maat. esim.

x Eurooppa -> labelissa lukee: Suomi, Ruotsi, Viro
x Aasia -> labelissa lukee sekä euroopan maat sekä aasian maat


Sekavasti selitetty, mutta toivottavasti joku edes tajusi ;)

1

339

    Vastaukset 1

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • vb2005

      Option Explicit
      Dim valitut_maat As Long
      Private Sub UserForm_Initialize()
         valitut_maat = 0
      End Sub
      Private Sub CheckBox1_Change()
         If CheckBox1.Value = True Then
            valitut_maat = valitut_maat 1
         Else
            valitut_maat = valitut_maat - 1
         End If
         muutateksti
      End Sub
      Private Sub CheckBox2_Change()
         If CheckBox2.Value = True Then
            valitut_maat = valitut_maat 2
         Else
            valitut_maat = valitut_maat - 2
         End If
         muutateksti
      End Sub
      Private Sub CheckBox3_Change()
         If CheckBox3.Value = True Then
            valitut_maat = valitut_maat 4
         Else
            valitut_maat = valitut_maat - 4
         End If
         muutateksti
      End Sub
      Sub muutateksti()
         Dim s As String
         If valitut_maat And 1 Then
            s = "Suomi, Ruotsi, Viro"
            If valitut_maat > 1 Then
               s = s ", "
            End If
         End If
         If valitut_maat And 2 Then
            s = s "Kiina, Indonesia"
            If valitut_maat > 3 Then
               s = s ", "
            End If
         End If
         If valitut_maat And 4 Then
            s = s "Sambia, Egypti"
         End If
         Label1.Caption = s
      End Sub

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

    Luetuimmat keskustelut

    1. Mikä sua mies vaivaa?

      Siis oikeasti.
      Ikävä
      68
      1076
    2. 64
      1052
    3. Mitä vuosimallia kaivattusi on?

      🤣🤣🤣🤣🤣🤣
      Ikävä
      58
      833
    4. 93
      827
    5. Kuinka hyvin te sopisitte

      Toisillenne vai sopisivatko ollenkaan? Mitä eroja
      Ikävä
      42
      678
    6. Jasmin vauhdissa

      Kyllä pitää Jassulla kiirettä, kun yhtenään menoa mun äidin, isäpuolen ja Markon kanssa Ossianin ollessa tietysti sulois
      Kotimaiset julkkisjuorut
      226
      659
    7. Vinkkiä miehelle

      Huomenna olen kuudesta eteenpäin kotona, yksin… Pääsetkö/uskallatko tutustua?
      Ikävä
      50
      598
    8. Joko uskallat.

      Huomenna nähdään.
      Ikävä
      40
      580
    9. Miksi et halua kaivattusi

      kanssa suhteeseen? Onko jokin syy vaikka rakastat häntä?
      Ikävä
      66
      575
    10. Nainen joka haluaa miehen

      Näyttää sen selvästi. Hommaa minihameet, pitkät hiukset, laihduttaa ja on iloinen sekä aktiivinen.
      Ikävä
      79
      563
    Aihe