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

267

    Vastaukset

    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. Klaukkalan onnettomuus 4.4

      Klaukkalassa oli tänään se kolmen nuoren naisen onnettomuus, onko kellään mitään tietoa mitä kävi tai ketä onnettomuudes
      Nurmijärvi
      102
      4457
    2. Yleltä tyrmäävä uutinen

      Ylen uutisen mukaan Raamattu on keksitty n. 2600. Putoaako kristinuskolta pohja kokonaan alta pois? https://yle.fi/a/74
      Luterilaisuus
      382
      1178
    3. Missä mustasusi on?

      Suden aloituksia ei ole näkynyt moneen päivään.
      Ikävä
      186
      1052
    4. Pakko kertoa mies

      Äitini tietää, että olen ihastunut sinuun. 😳 halusin että hän näkisi sinun kuvan ja pyysin googlaamaan sinua. Kommentti
      Ikävä
      109
      1032
    5. Sinä vain tulit elämääni

      Ja joku tarkoitus sillä on ollut. Näyttämään mitä olen ja kuinka arvokas voisin olla. Se muutti ja käänsi elämäni suunna
      Ikävä
      83
      903
    6. Millaisia ajatuksia on kaivatusta ja tilanteestanne tänään?

      Kerro omista mietteistäsi tai lähetä terveisiä. Ehkä hän lukee ja lähettää sinulle takaisin omia mietteitään.
      Ikävä
      47
      901
    7. Miten koskettaisit häntä?

      Miten lähestyisit jos hän olisi lähelläsi nyt..
      Ikävä
      64
      891
    8. Riitta-Liisa ja Toni Roponen: Ero! Riitta-Liisa Roponen kertoo asiasta Instagramissa.

      Riitta-Liisa ja Toni Roponen eroavat. Riitta-Liisa Roponen kertoo asiasta Instagramissa. – Talvi on ollut elämäni synk
      Maailman menoa
      10
      847
    9. Mitä ajattelet

      Kaivattusi uskosta tai onko hän uskossa?
      Ikävä
      64
      846
    10. Onko se niin

      Että meillä molemmilla on niin isot egot ettei voi alentua myöntämään kuin tykkää toisesta
      Ikävä
      64
      816
    Aihe