Autofill probleem met bestand met slechts 1 of 2 regels
Op basis van voorgaande heb ik onderstaande code geschreven en dat werkt in bestanden waar meer dan twee regels staan. Nu komen er bij mij soms bestanden voor met slechts twee regels, de kopregel en één regel met gegevens. Zoals in onderstaande code te zien is het de bedoeling om alle regels aan te vullen met titels in de kopregel AN1, AO1 en AP1 en vervolgens tekst te typen in AN2 en formules in AO2 en AP2. Daarna moeten deze drie cellen met autofill doorggetrokken worden voor alle gevulde regels in de kolommen A t/m AM. Dat gaat goed bij bestanden met méér dan één regel met gegevens, maar de macro gaat de fout in bij één regel.
Weet iemand een oplossing?
Groet Visus
Sub Totaal()
'
' Openen_toevoegen Macro
' De macro is opgenomen op 16-11-2009 door .
'OPEN het bestand 31000
Workbooks.Open Filename:= _
"J:\31000.xls"
ActiveWindow.ScrollColumn = 28
Dim lr As Integer
lr = Columns(16).Cells(Rows.Count).End(xlUp).Row
'HERNOEM tabblad in 31000
For Each sh In Sheets
sh.Name = "31000"
Next
'SELECTEER cel AN1 en type AA
Range("AN1").Select
ActiveCell.FormulaR1C1 = "AA"
'SELECTEER CEL AO1 en type leeftijd
Range("AO1").Select
ActiveCell.FormulaR1C1 = "Leeftijd"
'SELECTEER cel AP1 en type DOORLOOP
Range("AP1").Select
ActiveCell.FormulaR1C1 = "Doorloop"
'SELECTEER cel AN2 en type AB
Range("AN2").Select
ActiveCell.FormulaR1C1 = "AB"
'SELECTEER cel AO2 en type bereken LEEFTIJD
Range("AO2").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-6]="""","""",DATEDIF(RC[-6],RC[-38],""y""))"
Range("AO2").Select
'SELECTEER cel AP2 en bereken DOORLOOP
Range("AP2").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-33]="""","""",TODAY()-RC[-33])"
'Autofill van de 3 formules hierboven
Range("AN2:AP2").AutoFill Range("AN2:AP" & lr), xlFillDefault
'Sluit bestand 31000
ActiveWorkbook.SaveAs Filename:= _
"J:\31000.xls" _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
ActiveWorkbook.Close
Op basis van voorgaande heb ik onderstaande code geschreven en dat werkt in bestanden waar meer dan twee regels staan. Nu komen er bij mij soms bestanden voor met slechts twee regels, de kopregel en één regel met gegevens. Zoals in onderstaande code te zien is het de bedoeling om alle regels aan te vullen met titels in de kopregel AN1, AO1 en AP1 en vervolgens tekst te typen in AN2 en formules in AO2 en AP2. Daarna moeten deze drie cellen met autofill doorggetrokken worden voor alle gevulde regels in de kolommen A t/m AM. Dat gaat goed bij bestanden met méér dan één regel met gegevens, maar de macro gaat de fout in bij één regel.
Weet iemand een oplossing?
Groet Visus
Sub Totaal()
'
' Openen_toevoegen Macro
' De macro is opgenomen op 16-11-2009 door .
'OPEN het bestand 31000
Workbooks.Open Filename:= _
"J:\31000.xls"
ActiveWindow.ScrollColumn = 28
Dim lr As Integer
lr = Columns(16).Cells(Rows.Count).End(xlUp).Row
'HERNOEM tabblad in 31000
For Each sh In Sheets
sh.Name = "31000"
Next
'SELECTEER cel AN1 en type AA
Range("AN1").Select
ActiveCell.FormulaR1C1 = "AA"
'SELECTEER CEL AO1 en type leeftijd
Range("AO1").Select
ActiveCell.FormulaR1C1 = "Leeftijd"
'SELECTEER cel AP1 en type DOORLOOP
Range("AP1").Select
ActiveCell.FormulaR1C1 = "Doorloop"
'SELECTEER cel AN2 en type AB
Range("AN2").Select
ActiveCell.FormulaR1C1 = "AB"
'SELECTEER cel AO2 en type bereken LEEFTIJD
Range("AO2").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-6]="""","""",DATEDIF(RC[-6],RC[-38],""y""))"
Range("AO2").Select
'SELECTEER cel AP2 en bereken DOORLOOP
Range("AP2").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-33]="""","""",TODAY()-RC[-33])"
'Autofill van de 3 formules hierboven
Range("AN2:AP2").AutoFill Range("AN2:AP" & lr), xlFillDefault
'Sluit bestand 31000
ActiveWorkbook.SaveAs Filename:= _
"J:\31000.xls" _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
ActiveWorkbook.Close