Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1204to1208
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Formel =Max(...) per VBA ergänzen

Formel =Max(...) per VBA ergänzen
Stef@n
Hallo und einen schönen guten Wochenstart,
bin auf der Suche nach einer Möglichkeit, eine Formel via VBA zu ergänzen.
Der Wertebereich ist von B24 bis E xxx
Wievielen Zeilen es sind, ist jeweils von anderen Eingaben abhängig.
Jetzt soll in der Spalte F die Formel =MAX(B24:E24) einfügt werden (also ab F24)
und diese Formel soll das bis zur letzt-befüllten Zeile in Spalte E kopiert werden
Ich könnte das händisch machen, ich habe auch den Makro-Recoder laufen lassen,
krieg es aber nicht hin, das die letzte Zeile gefunden wird.
Freu mich auf einen Tip
Gruß
Stef@n

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
letzte Zeile
21.03.2011 11:33:12
Marc
Hallo!
Hier wird die letzte benutzte Zelle in Spalte A angegeben
lz = ActiveSheet.Cells(Rows.Count, "a").End(xlUp).Row
Ich hoffe, das hilft dir weiter...
Gruß, Marc
AW: letzte Zeile
21.03.2011 11:47:33
Stef@n
Hallo Marc
nur wie ergänze ich den Code mit deinem Hinweis;
Sub Makro8()
Range("B33").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Replace What:=" ", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Range("F19").Select
ActiveCell.FormulaR1C1 = "1"
Range("F19").Select
Selection.Copy
Range("B33").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlMultiply, _
SkipBlanks:=False, Transpose:=False
Range("F19").Select
Application.CutCopyMode = False
Selection.ClearContents
Range("F33").Select
ActiveCell.FormulaR1C1 = "=MAX(RC[-4]:RC[-1])"
Range("F33").Select
Selection.AutoFill Destination:=Range("F33:F53")
Range("F33:F53").Select
End Sub
Gruß
Stef@n
Anzeige
AW: letzte Zeile
21.03.2011 12:11:31
Rudi
Hallo,
versuchs mal so:
Sub Makro8()
Dim lRow As Long, lCol As Long
lRow = Range("B3").End(xlDown.Row)
lCol = Range("B33").End(xlToRight).Column
Range(Range("B33"), Cells(lRow, lCol)).Replace _
What:=" ", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Range("F19") = 1
Range("F19").Copy
Range("B33").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Range(Range("B33"), Cells(lRow, lCol)).PasteSpecial _
Paste:=xlPasteAll, Operation:=xlMultiply, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Range("F19").ClearContents
Range(Range("F33"), Cells(lRow, 6)).FormulaR1C1 = "=MAX(RC[-4]:RC[-1])"
End Sub

Gruß
Rudi
Anzeige
AW: letzte Zeile
21.03.2011 13:34:03
Stef@n
Hallo Rudi
danke für den Code
er bleibt nur leider stehen bei
lRow = Range("B3").End(xlDown.Row)
Fehler beim Kompilieren: Ungültiger Bezeichner
und xlDown ist fett markiert
?
Gruß
Stef@n
AW: letzte Zeile
21.03.2011 13:37:03
Rudi
Hallo,
Klammer sitzt falsch. Außerdem soll es doch wohl B33 sein.
lRow = Range("B33").End(xlDown).Row
Gruß
Rudi
perfekt ! Danke Rudi ! :) OT
21.03.2011 13:42:23
Stef@n

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige