vraag VBA programma

Status
Niet open voor verdere reacties.

Edwin180

Nieuwe gebruiker
Lid geworden
7 nov 2019
Berichten
4
Hallo,

Ik ben voor mijn werk bezig voor het opzetten van een werkformulier.
Ik wil het volgende maar kom er niet uit met excel niet met formules en niet met VBA.
Mijn kennis van VBA is niet groot.
Op mijn werk werken we met allemaal verschillende formulieren uit printen en in mappen stoppen wanneer gereed. Daar weer schriftelijke aanpassingen op, enz enz.
Ik wil dit middels één invul formulier in excel.
Zie bijlage.
Het invulformulier op “Overdracht” welke meerdere keren ingevuld wordt per dag, de volgende dienst kan hier namelijk mee verder op dezelfde dag/avond. Tevens kunnen daar over de gehele dag vragen over komen dus moet leesbaar blijven.
Als deze opdracht klaar is moet deze over gezet worden naar volgende blad in dat excel “2020” waar in de loop van de tijd deze info aangevuld kan worden.
Nu kom ik niet verder.
Ik zou graag middels de aanwezige knop in te drukken voor willen zorgen dat de ingevulde regels van op de juiste plek komt in 2020. Zie afkortingen en kleuren. Tevens de regels verdwijnen (leeg worden) in de overdracht.
Daarbij moet ook iedere keer een volgende lege regel gebruikt worden in 2020.
Helaas wegens privacy moet ik regels leeg laten en afkortingen gebruiken.
Excel indeling klopt wel.
VBA’s kan ik aanpassen met de juiste namen mocht dit nodig zijn.

Kunnen jullie mij helpen.
 

Bijlagen

  • Overzicht.zip
    1,3 MB · Weergaven: 79
Zorg ervoor dat volgorde van de kolommen in het blad '2020' hetzelfde is als de volgorde van het invulformulier.

Code:
Sub VenA()
  Sheets("2020").Cells(Rows.Count, 1).End(xlUp).Offset(1).Resize(, 12) = Application.Transpose(Range("D42:D53").Value)
  Range("D42:D53").ClearContents
End Sub
 
Dat gaat helaas niet. Deze gegevens moeten namelijk op deze plek blijven staan.
 
En waarom moet dat dan? Gaat het over de gegevens in het invoerblad of de gegevens in de resultaat tabel?
Plemp je bestand niet vol met lege kolommen en opgemaakte rijen en probeer een beetje gestructureerd te denken. 1,3 Mb ingepakt is bij mij slechts 22kb na het opschonen als Exelbestand.
 

Bijlagen

  • Overzicht.xlsm
    21,6 KB · Weergaven: 36
Samengevoegde cellen weggehaald.
Zorg dat de kolomkoppen(tekst) gelijk is aan de tekst van A42:A53.

Of iets korter nog.
Code:
Sub hsv()
Dim sv, x
sv = Application.Transpose(Sheets("overdracht").Range("b42:c54"))
 x = Sheets("2020").Range("a1:x1")
    With Application
      sv = .Index(sv, [row(1:2)], .IfError(.Match(x, .Index(sv, 1), 0), 13))
      Sheets("2020").Cells(Rows.Count, 1).End(xlUp).Offset(2).Resize(, 24) = .Index(sv, 2)
 End With
End Sub
 

Bijlagen

  • Overzicht.xlsb
    244,7 KB · Weergaven: 37
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan