zuerst einmal finde ich es toll, dass es dieses Forum gibt. Hoffe, dass ihr mir mit bei meinem Problem weiterhelfen könnt - zumal ich Laie im VBA-Umfeld bin (zumindest bisher noch)..
Ich habe ein Makro aufgezeichnet. Das filtert Spalte AQ nach "Nicht leer". Anschließend sollen die Werte aus Spalte AI nach AJ kopiert werden. Problem: der gefilterte Teilbereich ist dynamisch. Beim Aufruf der Excel-Mappe wird - weil ein SAP-BI Bericht dahintersteckt - ein Variablen-Screen prozessiert. Daher kann - je nach Eingabe der Außendienstnummern - die Gesamtergebnisliste unterschiedlich lang sein.
Somit kann ich nicht mit festen RANGES arbeiten. Die Werte sollen 1:1 kopiert/eingefügt und nicht per Formel (=A12) nur referenziert werden. Das ist eine eingabebereite Query und die Anwender sollen einfach die Werte kopieren können per Makro-Schaltfläche.
Ich muss nach "Nicht leer" in Spalte AQ filtern, weil es sonst aufgrund der Leerzellen in Spalte AQ zu einem Fehler kommt. Die eingefügten Werte in Spalte AJ benötigen aufgrund Referenzberechnung entsprechende Mengenwerte in Spalte AQ.
Hier mal das bisherige - aufgezeichnete und krampfhaft versuchte Probieren - Makro-Coding:
Sub Copy_Column_Last_Sales_Price_SD()
' Copy_Column_Last_Sales_Price_SD Makro
' RfC-1688: Vorbelegung der Spalte "'Last Sales Price (Plan Basis Price) Forecast FY" aus der _
Spalte "'Last Sales Price (Ref. from SD data)"
ActiveSheet.EnableAutoFilter = True
Selection.AutoFilter
' Range("AQ12").Select
' ActiveSheet.Range("$A$10:$AQ$274").AutoFilter Field:=43, Criteria1:="", Operator:= _
xlFilterValues
ActiveSheet.UsedRange.AutoFilter Field:=43, Criteria1:="", Operator:=xlFilterValues
' Columns("$AI11:$AI9999").Copy
' Columns("$AJ11:$AJ9999").PasteSpecial Paste:=xlValues
' ActiveCell.FormulaR1C1 = "=RC[-1]"
Range("UsedRange.AutoFilter").FormulaR1C1 = "=RC[-1]"
' Range("$AJ12:$AJ247").FormulaR1C1 = "=RC[-1]"
' ActiveSheet.UsedRange.FormulaR1C1 = "=RC[-1]"
' Active.Sheet.Range("$AI12:$AI247").Copy Range("$AJ12:$AJ247")
' Columns("AJ").Copy
' Columns("AJ").PasteSpecial Paste:=xlValues
' Application.CutCopyMode = False
' Selection.AutoFilter
ActiveSheet.EnableAutoFilter = False
End Sub
Ich weiß nicht mehr weiter und hoffe auf Eure Unterstützung.
Vielen Dank schon mal.
Gruss,
Peter