Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1540to1544
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

Zellbezüge in Makro ändern - bitte um Hilfe

Zellbezüge in Makro ändern - bitte um Hilfe
11.02.2017 13:05:42
Jenny
Hallo an euch alle,
an Werner, falls du das liest, ich bin die Jenny, mit der noch das größere Makro ansteht, aber hier geht es um eine völlig andere Mappe, das hat nichts miteinander zu tun.
Habe unten stehendes Makro,
lässt sich das irgendwie ändern, vorher wurde zwischen der Zeile 8 und 104 jede 12. Zeile genommen, jetzt soll jede 2. Zeile mit unterstrichenem Text genommen werden, man kann es leider nicht mehr an exakten Zeilen festmachen.
Und es sind jetzt 12 Zeilen, wo die HL Adresse genommen werden soll, nicht mehr 9 wie vorher.
Ansonsten soll das Makro weiterhin machen, was es auch bislang getan hat, nur halt andere Zeilen als Quelle nehmen.
Lässt sich das abändern?
Private Sub Worksheet_Change(ByVal Target As Range)
Dim lngZeile As Long
Dim lngZiel As Long
Dim shaShape As Shape
If Target.Cells(1).Address(False, False) = "A1" Then
With Worksheets("Tabelle2")
If .Range("A1") = "" Then
lngZiel = 1
Else
lngZiel = IIf(IsEmpty(.Cells(.Rows.Count, 1)), .Cells(.Rows.Count, 1).End(xlUp).  _
_
Row, .Rows.Count) + 1
End If
For lngZeile = 8 To 104 Step 12
If Cells(lngZeile, 1).Hyperlinks.Count > 0 Then
.Cells(lngZiel, 1) = Cells(lngZeile, 1).Hyperlinks(1).Address
lngZiel = lngZiel + 1
End If
Next lngZeile
End With
Application.EnableEvents = False
ActiveSheet.Cells.Clear
Application.EnableEvents = True
For Each shaShape In ActiveSheet.Shapes
shaShape.Delete
Next shaShape
End If
End Sub

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellbezüge in Makro ändern - bitte um Hilfe
11.02.2017 15:53:40
fcs
Hallo Jenny,
hier das angepasste Makro
LG
Franz
Private Sub Worksheet_Change(ByVal Target As Range)
Dim lngZeile As Long
Dim lngZiel As Long
Dim shaShape As Shape
Dim iCount As Integer, intHL As Integer
If Target.Cells(1).Address(False, False) = "A1" Then
With Worksheets("Tabelle2")
If .Range("A1") = "" Then
lngZiel = 1
Else
lngZiel = IIf(IsEmpty(.Cells(.Rows.Count, 1)), _
.Cells(.Rows.Count, 1).End(xlUp).Row, .Rows.Count) + 1
End If
iCount = 0
intHL = 0
For lngZeile = 8 To 104
If Cells(lngZeile, 1).Font.Underline = 2 Then
Select Case iCount
Case 0
If Cells(lngZeile, 1).Hyperlinks.Count > 0 Then
.Cells(lngZiel, 1) = Cells(lngZeile, 1).Hyperlinks(1).Address
lngZiel = lngZiel + 1
intHL = intHL + 1
If intHL = 12 Then Exit For
End If
iCount = iCount + 1
Case 1
iCount = 0
End Select
End If
Next lngZeile
End With
Application.EnableEvents = False
ActiveSheet.Cells.Clear
Application.EnableEvents = True
For Each shaShape In ActiveSheet.Shapes
shaShape.Delete
Next shaShape
End If
End Sub

Anzeige
AW: Zellbezüge in Makro ändern - bitte um Hilfe
11.02.2017 22:49:48
Jenny
Hallo Franz,
vielen Dank.
ich vergaß zu erwähnen, dass der Bereich von Zeile 8 bis 104 auch nicht mehr stimmt.
Kann ich einfach die Zeile
For lngZeile = 8 To 104 äbändern so wie ich es brauche oder muss ich da noch mehr beachten?
LG
Jenny
PS: Hab nen anstrengenden Tag hinter mir, bitte seh es mir nach, dass ich schlafen gehe und morgen testen werde obs funktioniert.
Testergebnis
12.02.2017 08:07:21
Jenny
Hallo Franz,
ja gut das mit der Änderung des Zellbereichs hab ich jetzt selbst gemacht.
Am Anfang hatte das Makro die 1. 3. 5. usw. Zeile genommen, gedacht mit jeder 2. war allerdings die 2. 4. 6. 8. usw.
aber hab einfach dann die Zeile For lngZeile = 8 To 104 so angepasst, dass er erst nach der ersten unterstrichenen Zeile anfängt und so hatte ich was ich wollte.
Vielen Dank
Jenny
Anzeige

88 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige