Userform

Status
Niet open voor verdere reacties.

johnny1980

Gebruiker
Lid geworden
28 apr 2013
Berichten
75
Hallo helpers,

Ik heb een userform met 2 combobox'en, die gegevens worden in een cel weggeschreven wanneer er op de knop OK wordt geklikt.

Dit is de code:

(Oproepen userform vba code op blad1)

If Not Application.Intersect(Target, Range("Q3:Q1500")) Is Nothing Then
UserForm4.Show
End If

(Wegschrijven gegevens userform naar cel in kolom Q vba code in userform)

Private Sub CommandButton1_Click()
a = ActiveCell.Row
Cells(a, "Q").Value = ComboBox1 & Chr(10) & ComboBox2.Value
Unload UserForm4
UserForm4.Hide
End Sub

Nu zou ik graag wanneer er in een cel in kolom Q een dubbelklik uitgevoerd word, de gegevens die zich in die cel bevinden in de combobox'en weergeven worden.

Ik heb reeds dit:
Private Sub UserForm_Initialize()

a = ActiveCell.Row
ComboBox1.Value = Cells(a, "Q").Value

End Sub

Hoe krijg ik de tweede regel van de cel in combobox 2?
Nu komen de gegevens van de eerste en tweede regel van de cel in combobox1,....

alvast bedankt voor jullie hulp!

Groetjes Johnny
 
Laatst bewerkt:
Plaats een voorbeeld document.
 
Code:
Unload UserForm4
UserForm4.Hide

Logisch of toch niet?

Als je iets samenvoegt met een teken dan kan je Split gebruiken om het weer uit elkaar te trekken. Al staat het in de handtekening van edmoor nogmaals wat leesvoer. https://www.helpmij.nl/forum/announcement.php?f=5
 
Laatst bewerkt:
Code:
Private Sub UserForm_Initialize()
Dim myArray() As String
a = ActiveCell.Row
myArray = Split(Cells(a, "Q").Value, Chr(10))

ComboBox1.Value = myArray(0)
ComboBox2.Value = myArray(1)

End Sub
 
Bikerbill,

Je code werkt perfect, ik heb gemerkt dat met activate dezelfde code ook werkt, wat is het verschil/beste?

Alvast bedankt!!
 
Bikerbill,

Ik heb in het bestand nog een andere kolom mrt een keuzelijst, om een of andere redenen zag ik pas na jou code dat daar min of meer hetzelfde staat...… enkel daat moet er geen tekst gesplitst worden.
ik heb de twee vergeleken en de userform activate werkt ook.
Nu zit ik met een ander probleem,...
Wanneer ik in een ingevulde cel in kolom Q dubbeklik gaat de userform open en word de tekst gesplitst in de twee keuzelijsten zoals gewenst.
Enkel wanneer ik in een lege cel dubbelklik krijg ik een foutmelding...met verwijzing naar volgende code:

(code) If Not Application.Intersect(Target, Range("Q3:Q1500")) Is Nothing Then
UserForm4.Show
End If

De bedoeling is dat wanneer de cel in kolom Q leeg is, userform 4 opent met lege velden, wanneer de cel ingevuld is de userform opent met de inhoud van de cel (gesplits).

Sorry voor de lastige vragen....

Johnny
 
Als je zegt een foutmelding te krijgen, vertel er dan ook bij welke dat is.
 
De bedoeling is dat wanneer de cel in kolom Q leeg is, userform 4 opent met lege velden, wanneer de cel ingevuld is de userform opent met de inhoud van de cel (gesplits).
Dan zal je dus nog even een check op inhoud van de cel moeten toevoegen.
Code:
Private Sub UserForm_Initialize()
Dim myArray() As String
a = ActiveCell.Row

If Cells(a, "Q").Value = "" Then
ComboBox1.Value = ""
ComboBox2.Value = ""
Else
myArray = Split(Cells(a, "Q").Value, Chr(10))
ComboBox1.Value = myArray(0)
ComboBox2.Value = myArray(1)
End If

End Sub

p.s. Lees dit even: https://www.helpmij.nl/forum/announcement.php?f=5
maakt lezen en hulp stukken handiger.
 
Laatst bewerkt:
Bikerbill,

Heel erg bedankt het werkt super nu.....
Gelukkig zijn er krakken zoals jullie!!!!!
Ik zal in het vervolg er aan denken om de code tussen codehaakjes te zetten, sorrrrryyy!!!

Nogmaals bedankt voor deze!!
Johnny
 
Wat is het nut van een combobox als je er maar 1 element in plaatst? Kan je net zo goed een textbox gebruiken.

Code:
Private Sub UserForm_Initialize()
  Dim ar
  ar = Split(ActiveCell, Chr(10))
  If UBound(ar) > 0 Then
    ComboBox1.AddItem ar(0)
    ComboBox2.AddItem ar(1)
  End If
End Sub
Bij meer elementen gebruik je .List.
 
VenA oplossing is mooier (en beter). :thumb:
En ja, vroeg mij ook al af waarom combobox...
 
Code:
ar = Split(ActiveCell, vblf)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan