• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Array vullen met een variabele

Status
Niet open voor verdere reacties.

Woffels

Gebruiker
Lid geworden
8 jan 2006
Berichten
251
Hallo,

Ik heb een combobox die ik vul met de waardes die in "Input1" staan

De gebruiker maakt een keuze in de combobox en de 3 Ranges vullen zich. Ik doe dit met een Array, waarbij de variabele "ar" verwijst naar Input1.
Maar ik heb meer input velden, uiteindelijk worden dat er een stuk of 30, maar in dit voorbeeld even 3. Nu wil ik de gebruiker eerst een keuze laten maken zodat ar gevuld wordt met de naam van die keuze.
Hoe doe ik dat?
 

Bijlagen

Niet:

Code:
ar = [Input1]

maar:

Code:
ar = Range(Range("LijstKeuze").Value).Value

NB: de syntax "Range("...") is efficienter dan de syntax [...].
 
Het gaat toch nog niet helemaal goed.

Omdat in mijn uiteindelijke project de data op een ander blad staat heb ik de instructie zo moeten maken.
Code:
ar = Sheets("Blad2").Range(Range("LijstKeuze").Value).Value

Dit lijkt te werken, maar als ik de sheet afsluit krijg ik de volgende foutmelding.
Image1.jpg


Zie ook attachment.
 

Bijlagen

Tijdens het sluiten van het bestand wordt kennelijk de keuzelijst' selectie op -1 gezet. HIerdoor krijg je de foutmelding. In de change macro dus even een check zetten of T = -1 en dan iets slims doen :-)
 
Ik heb de aktie van change naar click gezet en dat werkt ook.

Code:
Private Sub ComboBox1_Click()
 
Deze code lijkt me beter:

Code:
Private Sub ComboBox1_Change()
    If ComboBox1.ListIndex > -1 Then Blad1.Cells(14, 12).Resize(3) = Application.Transpose(Application.Index(ComboBox1.List, ComboBox1.ListIndex + 1, 0))
End Sub
 
Als de insteek is dat er eerst een keuze gemaakt moet worden uit de invullijst zou ik deze boven/links van de vervolgkeuzelijst zetten.
 

Bijlagen

Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan