Clear variabler før Call af kopi af subrutine
Jeg har en rutine, jeg anvender til at lave en filrange ud fra nogle definerede ranges.Set FillRange = ActiveSheet.Range(AlfaCell, CharlieCell)
Jeg laver en subrutine, der fungerer.
En anden subrutine der fungerer der er en identisk kopi, samme variabelnavne dog med forskelligt input.
Når jeg kører den ene rutine virker det perfekt.
Hvis jeg kører den anden rutine bagefter virker det lige sågodt.
Hvis jeg kører rutine 1 og kalder rutine 2, så får jeg advarslen "out of range".
Er det fordi jeg skal cleare variabler inden jeg kalder rutine2?
ser nogenlunde sådan ud:
Sub Fill_WeekNumber()
Dim AlfaCell As Variant
Dim Alfacellcol As Integer
Dim BravoCell As Variant
Dim Bravocellcol As Integer
Dim Offsetcount As Integer
Dim CharlieCell As Variant
Dim SourceRange As Variant
Dim FillRange As Variant
Dim NameRange As Variant
Cells.Find(What:="Weeknumber", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
ActiveCell.Offset(1, 0).Activate
AlfaCell = ActiveCell.Address
Alfacellcol = ActiveCell.Column
ActiveCell.Formula = "=WEEKNUM(F2)"
Range("A1").Select
Selection.End(xlDown).Select
Selection.Offset(1, 0).Select
ActiveCell.Offset(-1, 0).Activate
BravoCell = ActiveCell.Address
Bravocellcol = ActiveCell.Column
Offsetcount = Alfacellcol - Bravocellcol
CharlieCell = ActiveCell.Offset(0, Offsetcount).Address
Set SourceRange = ActiveSheet.Range("AP2")
Set FillRange = ActiveSheet.Range(AlfaCell, CharlieCell)
SourceRange.AutoFill Destination:=FillRange
Set NameRange = ActiveSheet.Range(AlfaCell, CharlieCell)
NameRange.Select
Call Daynumber
End Sub
Sub Fill_Daynumber()
Dim AlfaCell As Variant
Dim Alfacellcol As Integer
Dim BravoCell As Variant
Dim Bravocellcol As Integer
Dim Offsetcount As Integer
Dim CharlieCell As Variant
Dim SourceRange As Variant
Dim FillRange As Variant
Dim NameRange As Variant
Cells.Find(What:="Daynumber", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
ActiveCell.Offset(1, 0).Activate
AlfaCell = ActiveCell.Address
Alfacellcol = ActiveCell.Column
ActiveCell.Formula = "=Day(F2)"
Range("A1").Select
Selection.End(xlDown).Select
Selection.Offset(1, 0).Select
ActiveCell.Offset(-1, 0).Activate
BravoCell = ActiveCell.Address
Bravocellcol = ActiveCell.Column
Offsetcount = Alfacellcol - Bravocellcol
CharlieCell = ActiveCell.Offset(0, Offsetcount).Address
Set SourceRange = ActiveSheet.Range("AQ2")
Set FillRange = ActiveSheet.Range(AlfaCell, CharlieCell)
SourceRange.AutoFill Destination:=FillRange
Set NameRange = ActiveSheet.Range(AlfaCell, CharlieCell)
NameRange.Select
End Sub
