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

419

    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. Valtion alijäämä = yritystukien määrä = 10 mrd. euroa

      Mutta persut eivät vaan suostu tasapainottamaan valtion budjettia, vaikka yritystuet on tiedetty haitallisiksi. Miksi p
      Maailman menoa
      95
      7277
    2. Suomi käyttää sosiaalietuuksiin suhteessa eniten rahaa koko maailmassa

      Suomi käyttää sosiaaliturvaetuuksiin enemmän rahaa suhteessa bruttokansantuotteeseen kuin mikään muu maa maailmassa. Su
      Maailman menoa
      357
      6348
    3. Grahn-Laasonen: "Kansalainen joutuu pettymään, jos demareita äänestää"

      Ministeri viittaa tuoreeseen Helsingin Sanomien juttuun, jossa demarijohtajan keinoja Suomen suunnan muuttamiseksi esite
      Maailman menoa
      58
      3693
    4. Vähän fiksumpi Nimi kisa ? :=)

      Kirjoita teidän etunimet allekkain. Jos nimissä on joku kirjain sama, poista se. Tee sama tarkistus kaikille kirjaimill
      Ikävä
      29
      3429
    5. Mikä on suurin luonne- eroavuus sinussa

      Ja kaivatussasi? Vaikuttaako se huonoon vai hyvään suuntaan siinä, että teistä voisi tulla jotain?
      Ikävä
      192
      1931
    6. Kenen haluaisit voittavan Amazing Racen: Tuomas ja Esko, Millu ja Karoliina vai Maria ja Vilma?

      Amazing Race Suomi huipentuu lauantaina finaaliin. Jäljellä on kolme paria ja tiedossa on tehtäviä, jotka järkyttävät os
      Tv-sarjat
      17
      1628
    7. Mitä haluaisit sanoa tänään hänelle?

      Rakastamallesi ihmiselle.
      Ikävä
      60
      1363
    8. Gallup: Katsotko Salkkareita tai oletko katsonut?

      Salatut elämät on suomalaisten suosikkisarja vuosikymmenestä toiseen. Salkkareiden parissa viettää aikaa sukupolvet laps
      Tv-sarjat
      18
      1356
    9. Elämäni biisi starttaa uudessa muodossa - Voi olla pettymys faneille!

      Elämäni biisi ja juontaja Katja Ståhl ovat suomalaisten suosikkeja. Lauantai-iltaisin ohjelma on vetänyt tv-katsojat arv
      Tv-sarjat
      1
      1260
    10. Amazing Race Tomas rehellisenä Esko-appiukon, 63, tilasta: "Sairastelut ja..."

      Tomas Grekov ja Esko Rotola-Pukkila ovat mukana Amazing Race Suomi -kisassa. Ja nyt vuorossa on finaali. Hankaluuksia m
      Tv-sarjat
      1
      1237
    Aihe