listbox vullen

  • Onderwerp starter Onderwerp starter pasan
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

pasan

Terugkerende gebruiker
Lid geworden
6 nov 2010
Berichten
1.110
Hallo

Ik probeer een listbox te vullen met behulp van 7 txtboxen als zoek waarden
de Listbox wordt wel gevuld maar met de gehele range ipv alleen de waarden van de 7 Txtboxen
En als het mogelijk is de lijst gesorteerd weergeven, dus datums bij elkaar
Na een aantal dagen zoeken en spitten weet ik het echt niet meer
iemand tijd ?

ik heb het voorbeeld verwijderd omdat snb aangaf problemen te hebben bij het openen van de file
dit is uiteraard nooit mijn bedoeling
snb nogmaals mijn excuses voor het ongemak (heb echt geen idee waarom het mis ging)
ik zal hieronder alleen de code weergeven waarmee de listbox wordt gevuld
Code:
Private Sub CommandButton3_Click()
 ActiveSheet.Unprotect Password:=""
 Application.ScreenUpdating = False
 
 
   ListBox1.Clear
   For I = 1 To 7
      With [blad1!BL1].CurrentRegion
        .AutoFilter 3, Me("Txtdatum" & I)
        .SpecialCells(xlCellTypeVisible).Copy [blad1!BT100]
        .AutoFilter
    End With
    With [blad1!BL100].CurrentRegion
        sq = .Value
        .ClearContents
    End With
    ListBox1.List = sq

Next       

Application.ScreenUpdating = True
ActiveSheet.Protect Password:=""
End Sub
Code:
Private Sub UserForm_Initialize()
 sq = [blad1!BL1].CurrentRegion
    ListBox1.List = sq
End Sub
 
Laatst bewerkt:
Handig zo'n beveiligde file die Excel bij sluiten ook nog eens om zeep helpt.
 
Huh? Beveiligd?
En heeft deze file jou excel om zeep geholpen?
Ik open en sluit dit meerdere keren zonder problemen
maar als dit bij een ander problemen geeft mijn excuses ik zal hem meteen verwijderen
 
1. geen variabele nodig:
Code:
Private Sub UserForm_Initialize()
  ListBox1.List = [blad1!BL1].CurrentRegion.value
End Sub

2. kan eenvoudiger en zonder variabele
Code:
Private Sub CommandButton3_Click()
 ActiveSheet.Unprotect Password:=""
 Application.ScreenUpdating = False
 
  For I = 1 To 7
    With [blad1!BL1].CurrentRegion
      .AutoFilter 3, Me("Txtdatum" & I).text
      .Copy [blad1!BT100]
      .AutoFilter
    End With
    With [blad1!BL100].CurrentRegion
      ListBox1.List = .Value
      .ClearContents
    End With
  Next       

 Application.ScreenUpdating = True
 ActiveSheet.Protect Password:=""
End Sub

Als de filtering geen geldige waarden oplevert blijft de listbox leeg.
En verwijder natuurlijk eerst alle samengevoegde cellen.
 
Laatst bewerkt:
Als ik vanavond thuis ben zal ik de code toepassen
bedankt dat je toch nog reageerd
ik laat weer van me horen hier
 
helaas krijg het niet voor elkaar om te filteren op de textdatum & i en dan alleen deze datums in de listbox1 te krijgen van de form
 
Laatst bewerkt:
Je wilt blijkbaar iets anders:

Code:
Private Sub CommandButton3_Click()
 ActiveSheet.Unprotect Password:=""
 Application.ScreenUpdating = False
 
  For I = 1 To 7
    With [blad1!BL1].CurrentRegion
      .AutoFilter 3, Me("Txtdatum" & I).text
      .offset(1).Copy blad1.cells(rows.count,72).end(xlup).offset
      .AutoFilter
    End With
  Next       
  With [blad1!BL2].CurrentRegion
    ListBox1.List = .Value
    .ClearContents
  End With

 Application.ScreenUpdating = True
 ActiveSheet.Protect Password:=""
End Sub
 
Beste snb
ik kreeg een foutmelding object vereist bij de regel .offset (1).copy deze regel werdt geel
ik heb hierna geprobeerd jou code intekorten tot alleen de filter actie op kolom BL op de waarden van de textdatum & i
Code:
  For I = 1 To 7
    With [blad1!BL1].CurrentRegion
      .AutoFilter 3, Me("Txtdatum" & I).text
als ik de code laat lopen dan verdwijnen alle datums in kolom BL achter het filter dus kolom BL is dan al leeg
kan het zijn dat het door de datum format komt dat de waarden niet gevonden worden?
 
Laatst bewerkt:
de 7 Txtdatum worden gevuld op de volgende manier
de selection is dan de geselecteerde cel waar een datum in staat met de notatie "ddd"

Code:
Private Sub UserForm_Initialize()

With ActiveSheet
ActiveSheet.Unprotect Password:=""
Application.ScreenUpdating = False
Me.Txtuurall.SetFocus
Me.Txtnaam.Value = Range("AN1").Value

Txtdatum1 = selection
Txtdatum2 = (DateValue(Txtdatum1)) + 1
Txtdatum3 = (DateValue(Txtdatum1)) + 2
Txtdatum4 = (DateValue(Txtdatum1)) + 3
Txtdatum5 = (DateValue(Txtdatum1)) + 4
Txtdatum6 = (DateValue(Txtdatum1)) + 5
Txtdatum7 = (DateValue(Txtdatum1)) + 6


For I = 1 To 7
 
 X = Count + 1
Me("Ch" & I).Caption = Choose(Weekday(Me("Txtdatum" & I)), "Zondag", "Maandag", "Dinsdag", "Woensdag", "Donderdag", "Vrijdag", "Zaterdag")
Me("Txturen" & X) = ActiveCell.Offset(-1, X)

Next

End With
ActiveSheet.Protect Password:=""
Application.ScreenUpdating = True
End Sub
 
Laatst bewerkt:
Code:
For I = 1 To 7
  Me("Ch" & I).Caption = weekdayname(weekday(Me("Txtdatum" & I)))
next
 
Code:
Txtdatum1 = selection
Txtdatum2 = (DateValue(Txtdatum1)) + 1
Txtdatum3 = (DateValue(Txtdatum1)) + 2
Txtdatum4 = (DateValue(Txtdatum1)) + 3
Txtdatum5 = (DateValue(Txtdatum1)) + 4
Txtdatum6 = (DateValue(Txtdatum1)) + 5
Txtdatum7 = (DateValue(Txtdatum1)) + 6

bij het laden van de form worden de 7 textboxen hiermee gevuld
Txtdatum1 heeft de waarde van de geselecteerde cel de rest zoals hierboven
de geselecteerde cel heeft een datum notatie "ddd"
 
Code:
For I = 1 To 7
  Me("Ch" & I).Caption = weekdayname(weekday(Me("Txtdatum" & I)))
next
deze klopt niet nu staat de volgende dag bij de datum als .caption
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan