HWV
Terugkerende gebruiker
- Lid geworden
- 19 feb 2009
- Berichten
- 1.213
Beste,
Ik ben al aardig op weg maar krijg het niet werkend.
Ik moet vanuit een bestand elke nacht een bewerking uitvoeren.
Per klantnr. kolom A, moeten alle regels met die code verplaats worden naar een aparte tabblad met de klantnummer als naam, dan doe ik daar een opmaak over en dan moet het per map opgeslagen worden.
Hij kopieer nu wel de regels naar een aparte tabblad maar doet dit per regel een aparte tabblad en alleen de eerste geef hij de klantnr.
Bekijk bijlage VS-Lijst alle klanten bewerken automatisch-1.xlsm
en
Bekijk bijlage lijst-artikelen-alle klanten.xls
Ik zie niet waar het fout gaat!
HWV
Ik ben al aardig op weg maar krijg het niet werkend.
Ik moet vanuit een bestand elke nacht een bewerking uitvoeren.
Per klantnr. kolom A, moeten alle regels met die code verplaats worden naar een aparte tabblad met de klantnummer als naam, dan doe ik daar een opmaak over en dan moet het per map opgeslagen worden.
Hij kopieer nu wel de regels naar een aparte tabblad maar doet dit per regel een aparte tabblad en alleen de eerste geef hij de klantnr.
Code:
Sub lijsten()
On Error GoTo Err_Knop1_Click
Workbooks.Open Filename:="\\ZNPSV01\Data\automatisering\Klantlijstenassortiment\lijst-artikelen-alle klanten.xls"
Windows("lijst-artikelen-alle klanten.xls").Activate
Sheets("Data1").Select
Workbooks("lijst-artikelen-alle klanten.xls").Sheets("Data1").Range("A1:Z25000").Copy Workbooks("VS-Lijst alle klanten bewerken automatisch.xlsm").Sheets("Data1").Range("A1:Z25000")
Windows("lijst-artikelen-alle klanten.xls").Activate
Sheets("Data1").Select
Dim c As Range
Dim ws As Worksheet
Dim ws1 As Worksheet
Dim sh As Object
On Error Resume Next
Set ws1 = ThisWorkbook.Worksheets("Data1")
For Each c In ws1.Range("A2", ws1.Range("A" & Rows.Count).End(xlUp)) 'was A2
If WksExists(c.Text) Then
Set ws = ThisWorkbook.Worksheets(c.Text)
Else
Set ws = ThisWorkbook.Worksheets.Add
ws.Name = c.Text
End If
c.Resize(, 25).Copy ws.Range("A" & Rows.Count).End(xlUp).Offset(1)
Next
ws1.Select
For Each sh In ThisWorkbook.Sheets
If sh.Index > "" Then
Sheets(sh.Name).Select
'Formule 'aanroepen formule opmaak formulier
End If
Next sh
For Each ws In ThisWorkbook.Worksheets
Sheets(ws.Name).Select
Sheets(ws.Name).Copy
ActiveWorkbook.SaveAs Filename:= _
"\\ZNPSV01\Data\automatisering\Klantlijstenassortiment\" & ws.Name & ".xlsx", FileFormat:= _
xlOpenXMLWorkbook, CreateBackup:=False
ActiveWorkbook.Close
ThisWorkbook.Activate
Next
Workbooks("lijst-artikelen-alle klanten.xls").Close SaveChanges:=False
Exit_Knop1_Click:
Exit Sub
Err_Knop1_Click:
MsgBox Err.Description
Resume Exit_Knop1_Click
End Sub
Function WksExists(wksName As String) As Boolean
On Error Resume Next
WksExists = CBool(Len(Worksheets(wksName).Name) > 0)
End Function
Bekijk bijlage VS-Lijst alle klanten bewerken automatisch-1.xlsm
en
Bekijk bijlage lijst-artikelen-alle klanten.xls
Ik zie niet waar het fout gaat!
HWV
Laatst bewerkt: