Thema: Kommentar Makro


Seite durchsuchen:
Home


zurück zur Übersicht

Diskussionsgruppe: Tabellenkalkulation

Servus,
ich habe hier folgendes Makro das mir in dem ausgewählten Zellbereich einen Kommentar einfügt wenn etwas in der Zelle eingetragen ist.
Nun habe ich das Problem das ich mehrere Tabellenblätter in einer Tabelle habe und ich müsste dieses Makro auf alle Tabellenblätter anwenden.

Private Sub CMD_KE_Click()
Dim Zelle As Range
On Error Resume Next

For Each Zelle In Range("A1:AH1")

If Range(Zelle.Address) <> "" Then
If Not Range(Zelle.Address).Comment Is Nothing Then _
Range(Zelle.Address).ClearComments
With Range(Zelle.Address)
.AddComment.Text Text:=Range(Zelle.Address) & Chr(10) & ""
End With
Else
Range(Zelle.Address).ClearComments
End If
Next
End Sub


Ich gehe davon aus das ich die Zeile "For Each Zelle In Range" ändern muss jedoch weiß ich nicht wie ich dies nun auf mehrere Tabellenblätte anwenden kann.

Die Tabellenblätter sind von Januar bis Dezember durchbenannt und in der Zeile 8 müsste das Makro angewendet werden.

Hoffe das mir jemand weiterhelfen kann.
Grüße
Daniel

Von: BossD Datum: 29.03.2007, 09:58

alle Antworten zu dieser Frage




Antwort 1 von Hajo_Zi vom 29.03.2007, 10:09
Hallo Daniel,

mehrere Tabellen in einen Tabellenblatt, soll mehrere Tabellen in einer Datei?

Dein Code wird durch ein CommandButton ausgelöst? Der ist nun ja nur in einer Tabelle. Mache daraus ein Makro in einem Modul und rufe es über Extra, Makro auf.

Gruß Hajo

Antwort 2 von BossD vom 29.03.2007, 10:57
Tut mir leid, habe mich unklar ausgedrückt. Ja, ich habe mehrere Tabellen in einer Datei. Ich möchte das dass Makro bei einmaliger Aktivierung alle Tabellenblätter in dieser Datei bearbeitet.
Dabei spielt es wohl keine Rolle ob ich das über einen Button mache oder über das Menü.

Trotzdem vielen Dank schon mal
Servus
Daniel

Antwort 3 von Hajo_Zi vom 29.03.2007, 11:18
Hallo Daniel,

die Aufgabehätteich aus Deiner Beschreibung nicht gelesen.
Option Explicit

Private Sub CMD_KE_Click()
Dim WsTabelle As Worksheet
Dim Zelle As Range
On Error Resume Next
For Each WsTabelle In Sheets
With WsTabelle
For Each Zelle In .Range("A1:AH1")
If .Range(Zelle.Address) <> "" Then
If Not .Range(Zelle.Address).Comment Is Nothing Then .Range(Zelle.Address).ClearComments
With .Range(Zelle.Address)
.AddComment.Text Text:=.Range(Zelle.Address) & Chr(10) & ""
End With
Else
.Range(Zelle.Address).ClearComments
End If
Next
End With
Next WsTabelle
End Sub

Gruß Hajo

Antwort 4 von BossD vom 17.04.2007, 10:05
Sorry, war im Urlaub,
vielen Dank, hat geholfen.
MFG
D.Boss

Antworten der Gruppe: Tabellenkalkulation
www.supportnet.de







Office 365 stellt vertraute Microsoft Office-Tools für die Zusammenarbeit und Produktivität über die Cloud bereit. So können alle ganz einfach von nahezu überall zusammenarbeiten und auf E-Mails, Webkonferenzen, Dokumente und Kalender zugreifen.

07121 07122 07123 07124 07125 07126 07127 07128