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

Data overnemen en verzamelen op 1 tabblad

Status
Niet open voor verdere reacties.

JosEindhoven

Gebruiker
Lid geworden
4 dec 2014
Berichten
431
Popipipo heeft me geweldig geholpen met het maken van een verlofschema voor bv 2021. Is het mogelijk om de ingegeven data op de tabbladen januari t/m december 2021 te verzamelen op het tabblad overzicht vrije dagen om zo een totaal inzicht te krijgen wie wanneer vrij is
 

Bijlagen

  • VerlovenTotaal.xlsm
    212,6 KB · Weergaven: 29
Eerst heb je alle maanden in een verschillend tabblad gezet en dan automatisch de gegevens overhalen van de vorige maand.
En nu wil je weer alles combineren en in 1 tabblad zetten.
Wel omslachtig om alles 2 maal in het bestandje te willen hebben.
Persoonlijk zou ik het omgekeerd doen.
In het jaar overzicht alles in vullen en dan (via een draaitabel?) uitsplitsen naar elke maand.
Maar goed dat is mijn mening

Probeer het met deze formule eens.
Code:
=INDEX('2021 _Januari'!$B$3:$AF$27;MATCH($A4;'2021 _Januari'!$A$3:$A$27;0);MATCH(B$3;'2021 _Januari'!$B$2:$AF$2;0))
 
Ik weet niet wat ik fout doe Willem maar als ik de code invoer in b4 gebeurt er niets
 
Laatst bewerkt:
Welke uitslag had je dan verwacht?
Cel B4 haalt de uitslag op uit tabblad januari cel B4 en deze is leeg en dat zie je dus ook:)
 
Zo zou je de database op moeten bouwen.
Dan kunnen alle andere bladen verwijderd worden.

Code:
Sub M_snb()
   ReDim sp(12 * 900, 2)
   sp(0, 0) = "naam"
   sp(0, 1) = "datum"
   sp(0, 2) = "verlof"
   n = 1
   
   For Each it In Sheets
      If it.CodeName <> "Sheet1" Then
        sn = it.UsedRange
        For j = 3 To 30
          For jj = 2 To 32
            If Trim(sn(j, jj)) <> "" Then
               sp(n, 0) = sn(j, 1)
               sp(n, 1) = DateSerial(2021, it.Index + 1, jj)
               sp(n, 2) = sn(j, jj)
               n = n + 1
            End If
          Next
        Next
      End If
   Next
   
   Sheet1.Cells.Clear
   Sheet1.Cells(1).Resize(UBound(sp) + 1, UBound(sp, 2) + 1) = sp
End Sub
 
Je hebt wederom gelijk Willem.
Ik heb e.e.a. maar aangepast en verwijzing gemaakt naar december
Even wat meer werk maar geeft wel wat ik voor ogen had
 
@ Snb

Ik heb de code geprobeerd in het hier geplaatste document

Ik krijg echter een foutmelding
Zie bijlage
 

Bijlagen

  • Knipselsnb.JPG
    Knipselsnb.JPG
    37,5 KB · Weergaven: 32
De macro komt rechtstreeks uit jouw bestand.
 

Bijlagen

  • __Verlof _snb.xlsb
    104,2 KB · Weergaven: 22
Laatst bewerkt:
Geen idee. Als ik de code in mijn eigen bestand plaatste en de macro liet uitvoeren dan kreeg ik de foutmelding en in uw bestand werkt hij prima
 
IK heb nog wel 1 opmerking. Als ik kijk naar Overzicht vrije dagen naar kolom B dan geeft hij daar getallen terwijl er een datum moet staan. Als ik de celeigenschappen in kolom B verander in een datumveld dan geeft hij de verkeerde datums. Met name 25 die in januari en februari veel v's heeft staan
 
Wat is een 'verkeerde' datum en wat is volgens jou een 'goede' datum.
Er kan zoveel 'verkeerd' aan zijn dat de term 'verkeerd' te a-specifiek is.
 
Ik heb het veld datum in kolom B gewijzigd naar het datumveld volgens bijlage
 

Bijlagen

  • Knipselsnb1.JPG
    Knipselsnb1.JPG
    51,8 KB · Weergaven: 21
Je hebt mijn vragen niet beantwoord.
 
Daar heeft u gelijk in. Kolom B gaf dus getallen en na wijziging volgens bijlage in #15 gaf hij niet de juiste datums uit de verschillende tabbladen. Op regel 3 bij datum 44299 geeft hij na wijziging 13-4-2021 terwijl er in april geen verlof is genoten. Ik zo niet weten hoe ik het anders moet zeggen
 
Was er op 13-03-2021 of 13-05-2021 wel verlof ?
 
Vind je niet dat de verlofdagen in het totaaloverzicht overeenkomen met de verlofdagen voor januari ?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan