Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: For each im Bereich

For each im Bereich
WolfgangN
Hallo,
nachdem mir gerade Rudi geholfen hat, habe ich noch eine Frage. Im folgendem Makro wird in Zellen mit Kommentaren ein in einer Textbox eingegebener Begriff gesucht. Die gefundenen Zellen erhalten einen Rahmen. Dies klappt auch.
Ich möchte jetzt das nicht in allen Zellen mit Kommentaren gesucht wird, sondern nur in den Spalten C,D,E.
Wie kann ich den Bereich nur für diese 3 Spalten eingrenzen.
Vielen Dank und Gruß
Wolfgang
Private Sub CommandButton4_Click()
Dim varAbfrage As Variant
Dim comZelle As Comment
Dim lngCounter As Long
varAbfrage = TextBox2.Value
If varAbfrage  "" Then
For Each comZelle In ActiveSheet.Comments
If InStr(comZelle.Shape.DrawingObject.Text, varAbfrage) > 0 Then
lngCounter = lngCounter + 1
ActiveSheet.Range(comZelle.Parent.Cells.Address).Borders _
(xlEdgeLeft).LineStyle = xlContinuous
End If
Next comZelle
If lngCounter = 0 Then
MsgBox "Kein Begriff"
End If
End If
End Sub

Anzeige

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

Betreff
Benutzer
Anzeige
AW: For each im Bereich
02.12.2009 12:01:33
Rudi
Hallo,
For Each comZelle In ActiveSheet.Columns("C:E").Comments
Gruß
Rudi
AW: For each im Bereich
02.12.2009 12:16:24
WolfgangN
Hallo Rudi,
vielen Dank für Deine wiederholte Hilfe, leider bekomme ich jetzt in Deiner Zeile die Fehlermeldung: Laufzeitfehler 438, Objekt unterstützt diese Eigenschaft oder Methode nicht.
Würde mich über nochmalige Hilfe freuen.
Gruß
Wolfgang
Anzeige
AW: For each im Bereich
02.12.2009 13:22:51
Rudi
Hallo,
mein Fehler.
Private Sub CommandButton4_Click()
Dim varAbfrage As Variant
Dim comZelle As Range
Dim rCom As Range
Dim lngCounter As Long
On Error Resume Next
Set rCom = Columns("C:E").SpecialCells(xlCellTypeComments)
On Error GoTo 0
If rCom Is Nothing Then
MsgBox "keine Kommentare im Bereich", , "Info"
Else
varAbfrage = TextBox2.Value
If varAbfrage  "" Then
For Each comZelle In rCom
If InStr(comZelle.Comment.Text, varAbfrage) > 0 Then
lngCounter = lngCounter + 1
ActiveSheet.Range(comZelle.Parent.Cells.Address).Borders _
(xlEdgeLeft).LineStyle = xlContinuous
End If
Next comZelle
If lngCounter = 0 Then
MsgBox "Kein Begriff"
End If
End If
End If
End Sub

Gruß
Rudi
Anzeige
AW: For each im Bereich
02.12.2009 13:54:19
WolfgangN
Hallo Rudi,
nochmals Dank, es kommt jetzt keine Fehlermeldung mehr, es wird aber auch kein Rahmenteil gesetzt, obwohl vorhandener Begriff enthalten ist..
Das Makro läuft auch ca. 1 min, vorher nur Sekundenbruchteile.
Könntest Du nochmals helfen?
Gruß
Wolfgang
AW: For each im Bereich
02.12.2009 16:29:40
fcs
Hallo Wolggang,
folgende Anpassung deiens ursprünglichen Makros beschränkt die markierung auf Zellen mit markierungen in den palten C bis E
Gruß
Franz
Private Sub CommandButton4_Click()
Dim varAbfrage As Variant
Dim comZelle As Comment
Dim lngCounter As Long
varAbfrage = TextBox2.Value
If varAbfrage  "" Then
For Each comZelle In ActiveSheet.Comments
Select Case ActiveSheet.Range(comZelle.Parent.Cells.Address).Column
Case 3 To 5 'Spalten 3 bis 5 ( C bis E) weiter prüfen
If InStr(comZelle.Shape.DrawingObject.Text, varAbfrage) > 0 Then
lngCounter = lngCounter + 1
ActiveSheet.Range(comZelle.Parent.Cells.Address).Borders _
(xlEdgeLeft).LineStyle = xlContinuous
End If
Case Else
'do nothing
End Select
Next comZelle
If lngCounter = 0 Then
MsgBox "Kein Begriff"
End If
End If
End Sub

Anzeige
Danke
02.12.2009 16:42:36
WolfgangN
Hallo Franz,
es funktioniert jetzt super.
Vielen Dank
Gruß
Wolfgang
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige