Ik moet voorraden muteren van 1 groot bestand naar 3 of 4 kleinere met maximaal 1450 rijen.
Ik maak een nieuw bestand aan met een willekeurig volgnummer. Vervolgens plak ik een selectie uit “stock” naar het nieuwe bestand wat reeds geopend is (tabbladen boven excel, is een programmaatje voor die dat voor office uitvoert)
Uiteindelijk moet in het nieuwe bestand c1 en d1 worden gewist.
Bij deze actie krijg ik compileer fout in de regel Windows ("Stock") & ("d1").Activate
Ik kan niet vinden wat ik fout doe.
De rest van de regels na “ga terug naar stock” worden wel uitgevoerd.
Probleem is dat hij niet plakt en wist in het nieuw bestand. Ik hoop dat het duidelijk was.
Ik maak een nieuw bestand aan met een willekeurig volgnummer. Vervolgens plak ik een selectie uit “stock” naar het nieuwe bestand wat reeds geopend is (tabbladen boven excel, is een programmaatje voor die dat voor office uitvoert)
Uiteindelijk moet in het nieuwe bestand c1 en d1 worden gewist.
Bij deze actie krijg ik compileer fout in de regel Windows ("Stock") & ("d1").Activate
Ik kan niet vinden wat ik fout doe.
De rest van de regels na “ga terug naar stock” worden wel uitgevoerd.
Probleem is dat hij niet plakt en wist in het nieuw bestand. Ik hoop dat het duidelijk was.
Code:
Sub Macro4()
'
' Macro4 Macro
' Ctrl-a
'Aanmaken nieuwe map
Workbooks.Add
Range("A1").Select
ActiveCell.FormulaR1C1 = "artnummer"
Range("B1").Select
ActiveCell.FormulaR1C1 = "voorraad"
Range("C1").Select
ActiveCell.FormulaR1C1 = "=RANDBETWEEN(1000,9999)"
Range("F9").Select
Selection.ClearContents
'Nieuwe map opslaan
stPath = "C:\Users\riphi\Documents"
ActiveWorkbook.SaveAs Filename:=stPath & "\" & "Stock" & Range("c1").Value & ".xlsx"
'Plakken C1 naar D1 als waarde
Range("C1").Select
Selection.Copy
Range("D1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'Terug naar de originele stock
Windows("Stock").Activate
'Telt het aantal niet lege cellen, dit bepaalt het aantal keren uit te voeren macro gedeelt door 1470
ActiveCell.FormulaR1C1 = "=COUNTA(C[-2])-1"
Range("D1").Select
'Selecteer de gewenste regels uit stock
Rows("2:4").Select
Selection.Cut
'Ga naar de nieuw gemaakte map, de waarde in d1 is als waarde geplakt zoals bijv 4343 (STOCK4343)
Windows ("Stock") & ("d1").Activate
'Plak de geknipte rijen
Range("A2").Select
ActiveSheet.Paste
'Wissen cel d1 en c1
Range("d1").Select
Application.CutCopyMode = False
Selection.ClearContents
Range("c1").Select
Application.CutCopyMode = False
Selection.ClearContents
'Ga terug naar Stock
Windows("Stock").Activate
Rows("2:4").Select
Selection.Delete Shift:=xlUp
'start de macro opnieuw indien nodig met Ctrl-a
End Sub
Bijlagen
Laatst bewerkt: