Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
920to924
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
920to924
920to924
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Befehl ändern, aber wie?

Befehl ändern, aber wie?
30.10.2007 22:29:00
Karsten

Hallo...
für einen anderen Makro hat mir dankenswerter Weise mal jemand folgenden Befehl geschrieben:
Dim zrng As Range, myrange As Range, rngGen As Range
Set myrange = Range("d1")
With ActiveSheet 'anpassen
Set rngGen = Range("d1:d" & .Cells(.Rows.Count, 1).End(xlUp).Row)
End With
For Each rng In rngGen
If rng.BorderAround = True Then
If rng.Row > myrange.Row Then
If rng <> "" Then Set myrange = rng
End If
End If
Next
Application.Goto myrange, 0
für meine jetzigen Zwecke hätte ich den Befehl aber so abgeändert, dass sich das "Ende" überhaupt nicht nach irgendeiner letzten Zelle mit Inhalt in einer bestimmten Spalte richtet, sondern einfach bis zum Schluß weiterläuft.
Vielen dank für eure Hilfe.
MfG
Karsten

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Befehl ändern, aber wie?
30.10.2007 22:50:09
Daniel
Hi
was heißt für dich "bis zum ende durchlaufen"?
sollen alle Zellen geprüft werden?
das könntest du mit
For Each rng In activesheet.usedrange
erreichen.
Gruß, Daniel

AW: Befehl ändern, aber wie?
31.10.2007 15:18:00
Karsten
Hallo Daniel,
hab die mal den kompletten Makro kopiert.

Sub nnn04()
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Set n = Cells(1, 3).Find("n")
If Not n Is Nothing Then
Range("b1").Select
Selection.Copy
Dim zrng As Range, myrange As Range, rngGen As Range
Set myrange = Range("d1")
With ActiveSheet 'anpassen
Set rngGen = Range("d1:d" & .Cells(.Rows.Count, 1).End(xlUp).Row)
End With
For Each rng In rngGen
If rng.BorderAround = True Then
If rng.Row > myrange.Row Then
If rng  "" Then Set myrange = rng
End If
End If
Next
Application.Goto myrange, 0
With ActiveCell
Range(.Offset(1, 0), .Offset(1, 0)).Select
End With
Dim rngOld As Range
Set rngOld = ActiveCell
Range("b1").Select
Selection.Copy
rngOld.Select
ActiveSheet.Paste
End If
End Sub


Also, B1 wird immer wieder, wenn in C3 "n" steht kopiert und in Spalte D unter die letzte Zelle eingetragen. Aber nur, bis zur letzten Zelle mit Inhalt in Spalte 1. Der Vorgang soll aber ohne Rücksicht auf irgend eine Spalte weiterlaufen. Also immer wieder unten drunter schreiben.
Gruß
Karsten

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige