koodi?

Peksu_

Olen kirjoittanut tällaisen koodin vba:lla yhden commandbuttonin alle. Se lisää 10 textboxia lomakkeelle.

Dim Txtbox1(0 To 10)
X = 30
For j = 0 To 10
Set Txtbox1(j) = Controls.Add("Forms.Textbox.1", , True) 'True = Visible
X = X 20
Txtbox1(j).Width = 125
Txtbox1(j).Height = 15.75
Txtbox1(j).Top = X 36
Txtbox1(j).Left = 24
Next j

Haluaisin noista luoduista uusista textboxeista siirtää tietoja excel-taulukkoon. Minkälainen koodi tarvitaan, jotta tiedän, että haluamani textboxin tieto menee juuri oikeaan paikkaan jotain toista commandbuttonia klikkaamalla?

4

377

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • tätä...

      Application.ActiveSheet.Range("C3") = Txtbox1(1).Text

      • peetee

        Eipä toimi, ilmittaa txtbox1(1):n kohdalla että Sub or Funktion not defined.


      • tätä...
        peetee kirjoitti:

        Eipä toimi, ilmittaa txtbox1(1):n kohdalla että Sub or Funktion not defined.

        Veikkaan että yritit suorittaa rivin joko;

        a) ennen kuin olet lisännyt kontrollit lomakkeelle

        b) toisesta aliohjelmasta, jolloin luomasi taulukko on "out of scope" (jolloin sinun on määriteltävä kontrollitaulukko "globaalisti" siten että se on kaikkien aliohjelmien käytettävissä tai muuten selvitettävä mitä kontrolleja formilla on)

        Tämä koodi on kuitenkin kokeiltu ja todettu toimivaksi:

        Dim Txtbox1(0 To 10)
        X = 30
        For j = 0 To 10
        Set Txtbox1(j) = Controls.Add("Forms.Textbox.1", , True)
        X = X 20
        Txtbox1(j).Text = "Boksi " & j ' Ei välttämätön
        Txtbox1(j).Width = 125
        Txtbox1(j).Height = 15.75
        Txtbox1(j).Top = X 36
        Txtbox1(j).Left = 24
        Next j

        ' Textbox(1):n arvo ("Boksi 1") soluun C3
        Application.ActiveSheet.Range("C3") = Txtbox1(1).Text

        kuten myös tämä:

        ' General
        Dim Txtbox1(0 To 10)

        Private Sub CommandButton1_Click()
        X = 30
        For j = 0 To 10
        Set Txtbox1(j) = Controls.Add("Forms.Textbox.1", , True)
        X = X 20
        Txtbox1(j).Text = "Boksi " & j
        Txtbox1(j).Width = 125
        Txtbox1(j).Height = 15.75
        Txtbox1(j).Top = X 36
        Txtbox1(j).Left = 24
        Next j
        End Sub

        Private Sub CommandButton2_Click()
        Application.ActiveSheet.Range("C3") = Txtbox1(1).Text

        End Sub


      • peetee
        tätä... kirjoitti:

        Veikkaan että yritit suorittaa rivin joko;

        a) ennen kuin olet lisännyt kontrollit lomakkeelle

        b) toisesta aliohjelmasta, jolloin luomasi taulukko on "out of scope" (jolloin sinun on määriteltävä kontrollitaulukko "globaalisti" siten että se on kaikkien aliohjelmien käytettävissä tai muuten selvitettävä mitä kontrolleja formilla on)

        Tämä koodi on kuitenkin kokeiltu ja todettu toimivaksi:

        Dim Txtbox1(0 To 10)
        X = 30
        For j = 0 To 10
        Set Txtbox1(j) = Controls.Add("Forms.Textbox.1", , True)
        X = X 20
        Txtbox1(j).Text = "Boksi " & j ' Ei välttämätön
        Txtbox1(j).Width = 125
        Txtbox1(j).Height = 15.75
        Txtbox1(j).Top = X 36
        Txtbox1(j).Left = 24
        Next j

        ' Textbox(1):n arvo ("Boksi 1") soluun C3
        Application.ActiveSheet.Range("C3") = Txtbox1(1).Text

        kuten myös tämä:

        ' General
        Dim Txtbox1(0 To 10)

        Private Sub CommandButton1_Click()
        X = 30
        For j = 0 To 10
        Set Txtbox1(j) = Controls.Add("Forms.Textbox.1", , True)
        X = X 20
        Txtbox1(j).Text = "Boksi " & j
        Txtbox1(j).Width = 125
        Txtbox1(j).Height = 15.75
        Txtbox1(j).Top = X 36
        Txtbox1(j).Left = 24
        Next j
        End Sub

        Private Sub CommandButton2_Click()
        Application.ActiveSheet.Range("C3") = Txtbox1(1).Text

        End Sub

        Oikeassa olet, nyt toimii. Pienestä johtuvat nuo probleemat tällaisella aloittelijalla.


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

    Luetuimmat keskustelut

    1. Ja taas ammuttu kokkolassa

      Kokkolaisilta pitäisi kerätä pois kaikki ampumaset, keittiöveitset ja kaikki mikä vähänkään paukku ja on terävä.
      Kokkola
      57
      5509
    2. Mitä siellä ABC on tapahtunut

      Tavallista isompi operaatio näkyy olevan kyseessä.
      Alajärvi
      93
      4377
    3. Helena Koivu on äiti

      Mitä hyötyä on Mikko Koivulla kohdella LASTENSA äitiä huonosti . Vie lapset tutuista ympyröistä pois . Lasten kodista.
      Kotimaiset julkkisjuorut
      375
      2624
    4. Ovatko naiset lopettaneet sen vähäisenkin vaivannäön Tinderissa?

      Meinaan vaan profiileja selatessa nykyään valtaosalla ei ole minkäänlaista kirjoitettua tekstiä siellä. Juuri ja juuri s
      Nettideittailu
      72
      1141
    5. Suomi vietiin Natoon väärin perustein. Viides artikla on hölynpölyä. Yksin jäämme.

      Kuka vielä uskoo, että viides artikla takaa Suomelle avun, jos Suomeen hyökätään. Liikuttavasti täällä on uskottu ja ved
      Maailman menoa
      330
      1038
    6. Et ilmeisesti aio enää ikinä olla tekemisissä

      Että näinkö se menee
      Ikävä
      61
      853
    7. Kuvaile elämäsi naista

      Millainen hän on? Mikä tekee hänestä sinulle erityisen?
      Ikävä
      28
      833
    8. Sydämeni on sinun luona

      Koko ajan. Oli ympärilläni ketä oli niin sinä olet vain ajatuksissa ja tunteissa. En halua muiden kosketusta kuin sinun
      Ikävä
      46
      826
    9. Trump ja Venäjä

      Huomasitteko muuten... Käytännössä ainoat valtiot, joille Trump EI eilen asettanut typeriä tariffejaan, olivat Venäjä ja
      Maailman menoa
      102
      799
    10. Jatkuva stressitila

      On sinun vuoksesi kun en tiedä missä mennään mutta tunteeni tiedän ainoastaan
      Ikävä
      52
      789
    Aihe