• 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.

Zoeken op datum in archief

Status
Niet open voor verdere reacties.
Diverse aanpassingen:
Columncount op 7 en columnwidths aangepast in de listbox en de comboboxes eigenschappen.

De click gebeurtenis van de commandbuuton voor de listbox.
.List(i,4) naar 5.
Code:
If .List(i, [COLOR=#0000ff]5[/COLOR]) < CDate(CBstart.Text) Or .List(i, [COLOR=#0000ff]5[/COLOR]) > CDate(CBeinde.Text) Then .RemoveItem (i)

In de initiale()
Code:
sn = .Cells(1).CurrentRegion.Offset(1).Resize(.UsedRange.Rows.Count - 1, [COLOR=#0000ff]7[/COLOR]).Value


 

Bijlagen

  • beveiliging 1.xlsb
    697 KB · Weergaven: 21
Pas ik daarmee aan dat er een tijd wordt weergegeven in de 6e kolom?
 
Verklaar je eens nader.
 
Ik heb er in totaal 2 kolommen bij gezet en kom uit op 7 kolommen in de sheet Archief beveiligers. Wanneer ik via het zoekveld nu de verwijderde personen zoek en op 'Toon overzicht' druk krijg ik netjes het overzicht van alle 7 kolommen. Echter staat er in de 6e kolom (in de sheet) een tijd en die wordt op het overzichtslijstje (de listbox ) weergegeven als: 0.71348379
 
Plaats het bestand eens, want het transporteren van gegevens van het ene naar het andere blad heb ik niet gemaakt.
Ik heb ook geen gegevens in het blad wat getransporteerd moet worden.
 
Voeg de blauwe regel toe.
Code:
Private Sub CommandButton1_Click()
Dim i As Long, sh As Object
On Error Resume Next
Set sh = Sheets("archief beveiligers")
 If CBstart.Text <> "" And CBeinde.Text <> "" Then
   With ListBox1
     .List = sh.Cells(1).CurrentRegion.Offset(1).Resize(sh.UsedRange.Rows.Count - 1, sh.UsedRange.Columns.Count).Value
        For i = .ListCount - 1 To 0 Step -1
 [COLOR=#0000ff]            .List(i, 5) = Format(.List(i, 5), "hh:mm")[/COLOR]
          If .List(i, 4) < CDate(CBstart.Text) Or .List(i, 4) > CDate(CBeinde.Text) Then .RemoveItem i
        Next i
    End With
 End If
 If Err.Number <> 0 Then MsgBox "geen geldig datum ingegeven"
 On Error GoTo 0
End Sub
 
Laatst bewerkt:
@HSV

Is dit niet wat tegenstrijdig ?

Code:
 .RemoveItem (i)
            .List(i, 5) = Format(.List(i, 5), "hh:mm")
 
Onder het eten schoot het mij te binnen, maar ik zie jouw reactie al staan.
Ik had het ook niet getest daar er maar één gegeven aanwezig is.

Code aangepast in vorige post.
 
coderen op de lege maag is geen aanrader .... ;)
 
Volledig met je eens.
Problemen oplossen voor een ander zonder gegevens is evenzo geen aanrader.
 
Wat ik me af vraag, je specificeert hier dus dat een bepaalde kolom, dus kolom 6, als tijd moet worden weergegeven. Hoe specificeer je in de code dan dat het om kolom 6 gaat?
.List(i, 5) = Format(.List(i, 5), "hh:mm") zie ik geen 6 staan maar een 5?

Is het eventueel ook nog mogelijk om boven in de listbox van het overzicht de naam van de kolom uit de sheet archief beveiligers te zetten? Dus in het overzicht de kolomnamen er boven?

Veel vragen, ik weet het maar dit was voor mij het moeilijkste stukje.
 
Geprobeerd met datumnotatie en van de 5 een 4 gemaakt. Ja.... deze 4 is in de sheet een 5.
 
Dus dat houdt in?

De eerste kolom in Listbox = 0
De tweede = 1
enz.
enz.

Het werken met Columnheads gaat in deze methode niet.
Je moet dan werken met RowSource i.p.v. List, en dan kan je geen gebruik maken van .RemoveItem (i).
 
Had idd voor mezelf al de conclusive getrokken dat excel de eerste kolom als kolom 0 ziet :)
Bij deze bevestigd.

Waar staat het .RemoveItem stukje voor dan?

Interessant dit. Leer veel meer over code :)
 
De listbox wordt gevuld met alle gegevens uit je tabblad.
Als de gegevens van de listbox niet aan de gegevens van de comboboxes voldoen (datum) worden deze rijen verwijderd uit de Listbox.
 
Logisch.... Waarom denk ik zelf niet even verder? Haha.

Tot zover wel heel erg bedankt! Begin dit stukje werk nog leuk te vinden ook. Kan veel maar sommige dingen kom ik (nog) niet direct uit. Denk, dat ik binnenkort nog een hele leuke uitdaging heb. Eerst bouw ik dit system hierop verder en als ik zover ben zal ik jullie zeker deze vraag stellen!
 
@HSV

waarom doe je selectie nadat je de gegevens in de listbox hebt gezet en niet vooraf (in array-vorm) ?
 
Mag ook wat mij betreft hoor, maar het begon bij: "dat kan simpeler". :)

Ps.
Daarna kwamen de vragen over aanvullingen/wijzigingen.

Edit: In een array met kolomnamen.
 

Bijlagen

  • Bas1980 array2.xlsb
    700,5 KB · Weergaven: 21
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan