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

VBA Kommentar aus Bereich einer Tabelle schreiben

VBA Kommentar aus Bereich einer Tabelle schreiben
11.03.2015 16:29:49
Timonski
Hallo,
ich will von einem anderen Tabellenblatt, einen bestimmten Bereich z.B. A1:C20 in eine bestimmte Zelle (hier A1) als Kommentar reinschreiben...
hab auch schon mal was gefunden und was geändert, aber der Bereich bekomm ich nicht hin :-)
Sub MyComment()
Dim myCom As Comment
Dim myText As String
On Error Resume Next
myText = Worksheets("Tabelle2").Cells(1, 1) ' Hier soll der Bereich stehen
Cells(1, 1).Comment.Delete
Set myCom = Cells(1, 1).AddComment
With myCom
.Visible = False
.Text Text:=myText
.Shape.LockAspectRatio = msoFalse
.Shape.TextFrame.AutoSize = True
End With
End Sub
vielleicht weiß ja jemand ne Lösung :-)
Danke
Timonski

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Würde ich so machen...
11.03.2015 17:05:24
Michael
Hallo Timonski!
...und zwar:
Sub BereichAlsKommentar()
Dim Bereich As Range
Dim Zelle As Object
Dim Zelltext As String
Set Bereich = Worksheets("Tabelle1").Range("A1:C20")
On Error Resume Next
Worksheets("Tabelle1").Range("A1").Comment.Delete
For Each Zelle In Bereich
Zelltext = Zelltext & " " & Zelle.Text
Next
With Worksheets("Tabelle1").Range("A1").AddComment
.Visible = False
.Text Zelltext
End With
End Sub
Achtung - falls schon ein Kommentar in A1 vorhanden ist, wird dieser gelöscht und neu gesetzt! Deine Bereich/Arbeitsblätter musst Du natürlich anpassen. Allerdings würde ich diese Schleife nicht über allzuviele Zellen laufen lassen - aber bei einem Bereich wie in Deinem Bsp. ist es schon ok.
Passt?
LG
Michael

Anzeige
AW: Würde ich so machen...
11.03.2015 17:29:58
Timonski
Hallo Michael,
vielen Dank für die Antwort... das mit Bereich funktioniert,
nur es wird alles hintereinander geschrieben :-(
ich dachte er schreib es so ähnlich wie in der Tabelle rein.
Ja er soll den Kommentar sogar immer ändern.
Es soll sogar soweit gehen, dass er je nach Bedingung ein anderes Blatt nehmen soll und einen kleineren bzw. größeren Bereich nimmt
Danke...
Timonski

Es ist nicht möglich...
11.03.2015 21:37:05
Michael
Hallo Timonski!
ich dachte er schreib es so ähnlich wie in der Tabelle rein.
... Kommentartext tabellenmäßig oder sonstwie zu formatieren; ein Kommentar enthält Text, tlw. ist fetter Schriftschnitt möglich, aber das war's.
dass er je nach Bedingung ein anderes Blatt nehmen soll und einen kleineren bzw. größeren Bereich nimmt
Das ist schon möglich, aber dafür müsstest Du
1. die entsprechende Bedingung nennen und
2. inwiefern Du diese ermitteln willst (steht sie in einer Zelle, soll eine Abfrage erfolgen... )
Aber nach Deiner Enttäuschung darüber, dass ein Kommentar keine Tabellendarstellung ermöglich, bin ich mir nicht sicher, was Du eigentlich vor hast.
LG
Michael

Anzeige
In einem Kommentar kann nur Text angezeigt ...
12.03.2015 02:46:23
Luc:-?
…wdn, Michael,
das ist richtig! Aber wer oder was hindert dich, den tabellenähnlich zu formatieren?
Allerdings muss man dabei auf Methoden aus der EDV-Steinzeit zurückgreifen. Der Eine oder Andere wird viell noch wissen, wie vor 30 Jahren TabellenAusdrucke aussahen, nämlich so:
+---------+---------+---------+-------+
|    0    |    1    |    2    |   3   |
+---------+---------+---------+-------+  usw.
Dabei lässt sich auch der Tabulator benutzen, aber manuell nur zusamen mit Strg, also [[Strg][Tab]], kurz ^Tab. Allerdings ist das ein normaler, kein numerischer Tab! Aber viell gibt's den ja auch und ggf lässt sich sogar eine Word-Tabelle hier einkopieren und wird richtig ange­zeigt…?
Gruß, Luc :-?
Besser informiert mit …

Anzeige
Du machst mich fertig, Luc :-) + neue Varianten...
12.03.2015 10:30:27
Michael
Hallo und schönen Vormittag!
Zunächst @ Luc:
Du machst mich fertig; gibt es eine Uhrzeit, zu der Du _nicht_ im Forum aktiv bist? Hut ab, das übersteigt meine Möglichkeiten!
Aber wer oder was hindert dich, den tabellenähnlich zu formatieren?
Ich bin ein grundfauler Mensch; für VBA hab ich mich interessiert, weil es mir Arbeit abnehmen kann - und bei gewissen Projekten bin ich mir nicht sicher ob sich der Aufwand rentiert... ¯\_(ツ)_/¯
Aber Du hast es geschafft, dass ich mich dennoch mit neuen Varianten beschäftigt habe, daher
@ Timonski (hpts.) und alle die den Faden mitverfolgen:
Den Vorschlag von Daniel (verknüpftes Bild statt Kommentar) habe ich einmal so umgesetzt
Sub BereichAlsKommentar()
'Bereichwerte als verknüpftes Bild
Dim Bereich As Range
Set Bereich = Worksheets("Tabelle1").Range("A1:C20")
Select Case Worksheets("Tabelle1").Shapes.Count
Case Is > 0
Worksheets("Tabelle1").Shapes(1).Visible = Not Worksheets("Tabelle1").Shapes(1). _
Visible
Case Else
Bereich.Copy
Worksheets("Tabelle1").Range("E1").Select
Worksheets("Tabelle1").Pictures.Paste(Link:=True).Select
Selection.Placement = xlFreeFloating
Application.CutCopyMode = False
End Select
End Sub
Den Vorschlag von Luc (ja, auch ich kenne noch die vorchristlichen Tabellenausdrucke :-) ) habe ich jetzt so hingebracht
Sub BereichAlsKommentar()
'Bereichwerte mit Tabulatortrennung in Kommentar
Dim Bereich As Range
Dim EndSpalte As Long
Dim Zelle As Object
Dim Zelltext As String
Set Bereich = Worksheets("Tabelle1").Range("A1:C20")
EndSpalte = Bereich.Columns.Count
On Error Resume Next
Worksheets("Tabelle1").Range("A1").Comment.Delete
For Each Zelle In Bereich
Select Case Zelle.Column
Case Is = EndSpalte
Zelltext = Zelltext & " " & Zelle.Text & vbCrLf
Case Else
Zelltext = Zelltext & " " & Zelle.Text & "       "
End Select
Next
With Worksheets("Tabelle1").Range("A1").AddComment
.Visible = False
.Text Zelltext
End With
End Sub
Hier hatte ich meine Probleme mit "echten" Tabulatoren - ist also eher ein Workaround.
Die Variante über Word konnte ich bisher nicht realisieren - dafür bin ich Word-VBA noch nicht versiert genug; wenn ich noch Zeit finde, reich ich ggf. nach.
@ Timonski: Rückmeldung (an ALLE, die hier tolle Lösungen bieten) ist wünschenswert.
LG
Michael

Anzeige
AW: Du machst mich fertig, Luc :-) + neue Varianten...
12.03.2015 13:09:07
Timonski
Ganz ehrlich... Ihr seit wahnsinnig :-) :-) :-)
Allen vielen vielen Dank... ganz besonders natürlich an Michael. Die zweite Lösung ist genau das was ich suche :-)
wenn Du mir nur noch sagen könntest, wie ich die Größe des Kommentar automatisch änder.
.AutoSize = True funktioniert nicht :-(
DANKE DANKE DANKE!!!

Das freut mich, und...
12.03.2015 13:58:14
Michael
Timonski,
...daher liefere ich natürlich auch noch die Größenanpassung gerne nach. Hier der ergänzte Code:
Sub BereichAlsKommentar()
'Bereichwerte mit Tabulatortrennung in Kommentar
Dim Bereich As Range
Dim EndSpalte As Long
Dim Zelle As Object
Dim Zelltext As String
Set Bereich = Worksheets("Tabelle1").Range("A1:C20")
EndSpalte = Bereich.Columns.Count
On Error Resume Next
Worksheets("Tabelle1").Range("A1").Comment.Delete
For Each Zelle In Bereich
Select Case Zelle.Column
Case Is = EndSpalte
Zelltext = Zelltext & " " & Zelle.Text & vbCrLf
Case Else
Zelltext = Zelltext & " " & Zelle.Text & "       "
End Select
Next
With Worksheets("Tabelle1").Range("A1").AddComment
.Visible = False
.Text Zelltext
End With
With Worksheets("Tabelle1").Range("A1").Comment.Shape.TextFrame
.AutoSize = True
End With
End Sub
Hoffe jetzt klappt alles, wie gewünscht. Vielen Dank für Deine äußerst nette Rückmeldung! Da macht Helfen Spaß!
LG
Michael

Anzeige
AW: Würde ich so machen...
12.03.2015 10:21:30
Nepumuk
Hallo,
wenn du den Bereich kopierst in ein Grafikprogramm z.B. IrfanView einfügst und speicherst, kannst du dieses Bild in den Kommentar einfügen.
Beispiel:
Userbild
Gruß
Nepumuk

Achso
12.03.2015 10:23:01
Nepumuk
Hallo,
das lässt sich natürlich auch per VBA automatisieren.
Gruß
Nepumuk

AW: VBA Kommentar aus Bereich einer Tabelle schreiben
12.03.2015 07:30:47
daniel
Hi
Erstelle von dem Zellbereich eine "Verknüpfte Bild Kopie".
Das geht über Inhalte Einfügen.
Erstellen dann einen Button, mit dem du diese Grafiken ein oder Ausblenden kannst.
Gruß Daniel
Anzeige

332 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige