Waarden uit een tabblad importeren in een UserForm

Status
Niet open voor verdere reacties.

EJProsman

Gebruiker
Lid geworden
15 mrt 2011
Berichten
43
Beste Forum leden,

Wie weet hoe je aan de hand van twee waarden die je in een ComboBox kan kiezen een waarde uit een tabblad in een TextBox kan zetten. Elke waarde in het tabblad heeft twee variabelen, zeg maar een x-as en een y-as.

Om het wat duidelijker te maken een eenvoudig voorbeeld in de bijlage.

Alvast bedankt,

Mvg
EJProsman
 

Bijlagen

Hee, ik heb daar naar gekeken en het is wel ongeveer wat ik bedoel. Ik ben zelf ondertussen ook nodig bezig geweest met mijn Excel bestand en ben aardig onderweg. In het tabblad heb ik een rij toegevoegd die voor elke rij het rijnummer aangeeft. Hetzelfde heb ik gedaan voor de kolomnummers. Hier kan dan opgezocht worden met een code.

Ik kan via een aantal codes de cel traceren waaruit de input gehaald wordt. In het userform heb ik twee (verborgen) textboxen die ingevuld worden aan de hand van de comboboxen. Textbox1 heeft de goede kolomnummer en Textbox2 heeft de goede rijnummer. Deze twee waarden geven samen de goede cel aan bijv a5 of b3 (met de nieuwe rij en de nieuwe kolom in het tabblad kan hier opgezocht worden). Nu moet de waarde van deze cel nog in Textbox3 komen. Ik denk dat dit mogelijk is met Dim As Variant maar ik krijg dit niet voor elkaar. Ik heb nu:

TextBox3_Click()
Dim x As Variant
Dim y As Variant

For x = TextBox1 To TextBox1
Next x
For y = TextBox2 To TextBox2
(hier moet (denk ik) de code komen die de waarde uit de juiste cel haalt, maar die weet ik niet)
Next y

End Sub

Weet jij hoe dit stuk code eruit ziet?

Alvast bedankt
 
Voor de duidelijkheid:

TextBox 1 geeft het rijnummer van rij aan. Deze staat in het tabblad in rij1 weergegeven. TextBox 2 geeft het kolomnummer(getal) aan, deze staat weergegeven in Kolom A.

Met deze twee textboxen zijn de coordinaten bepaald en kun je het zoeken. Met Dim x As Variant etc kun je de cel bepalen. Nu moet de waarde van de gevonden cel in textbox3 komen.

Ik hoop dat dit duidelijk genoeg is

Alvast bedankt
 
EJProsman,

Met deze code werkt het ook.
Code:
Private Sub ComboBox2_Change()
  A = ComboBox1.Value + 1 'Regel nummer
  B = ComboBox2.Value     'Kolom letter
  TextBox1.Value = Application.Intersect(Rows(A), Columns(B))
End Sub
 
Laatst bewerkt:
Je hoeft zelfs geen variabelen te gebruiken.
Code:
Private Sub ComboBox2_Change()
    TextBox1.Value = Application.Intersect(Rows(ComboBox1.Value + 1), _
                            Columns(ComboBox2.Value))
End Sub
 
Warme bakkertje
Je hoeft zelfs geen variabelen te gebruiken.

Ik was al blij dat ik het zo voorelkaar had. :D
Ben dus niet voor niets een Amateur en vaak lukt het me ook.
Je code is inderdaad simpeler. :thumb:
 
Of:
Code:
Private Sub UserForm_Initialize()
  ComboBox1.RowSource = "Rij"
    ComboBox2.List = Application.Transpose(Sheets("Sheet1").Range("C1:E1"))
End Sub
Code:
Private Sub ComboBox2_Change()
    TextBox1.Value = Application.Intersect(Rows(ComboBox1.Value + 1), _
                            Columns(ComboBox2.ListIndex + 3))
End Sub
 

Bijlagen

Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan