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

Übersetzte Kommentare einfügen

Übersetzte Kommentare einfügen
21.04.2015 09:02:53
Arnold
Hallo zusammen
Bin neu hier und stelle gleich eine - für mich wenigstens - knifflige Frage:
Ich habe eine Exceltabelle "Waflu" in welcher in den verschiedensten Spalten A - Z bei unterschiedlichsten Zellen Kommentare in Deutsch erfasst sind.
Mittels einem VBA habe ich diese ins Tabellenblatt "Kommentar-Text" ausgelesen.
Die ausgelesenen Kommentare habe ich auf FR & IT übersetzt und möchte nun die übersetzten Kommentare zu dem bereits erfassten Deutschen Kommentar einfügen.
https://www.herber.de/bbs/user/97193.xlsm
Wie gesagt, den Code für aus Auslesen klappt prima, wie ihr im Tabellenblatt "Kommentar-Text" sehen könnt, mit ZellBezeichnung.
Leider erhalte ich beim Code für das Einfügen der übersetzten Daten eine Fehlermeldung.
Ich habe an dem Code herumgespielt, krieg den aber nicht hin.
Hier mein Code zum Einfügen:
Sub KommentarEinfügen()
Dim notiz As Comment
Dim intz As Integer
Dim intMax As Integer
Dim strBezug As String
Dim wks As Worksheet
For Each wks In ActiveWorkbook.Worksheets
For Each notiz In wks.Comments
notiz.Delete
Next notiz
Next wks
With Sheets("Kommentar-Text") 'Name des Tabellenblattes in welchem die Kommentare erfasst sind
intMax = .UsedRange.Rows.Count
For intz = 2 To intMax
strBezug = Sheets("Kommentar-Text").Cells(intz, 2).Value
Sheets(.Cells(intz, 1).Value).Range(strBezug).AddComment
(.Cells(intz, 4).Value)
Next intz
End With
End Sub
Kann mir jemand von euch helfen?
Vielen Dank euch & nen sonnigen Tag
Arnold

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

Betreff
Datum
Anwender
Anzeige
AW: Übersetzte Kommentare einfügen
21.04.2015 09:42:49
Nepumuk
Hallo,
(.Cells(intz, 4).Value)
du hast die Spalte 4 für die Texte angegeben es ist aber die Spalte 8. Excel mag keine leeren Kommentare einfügen.
Gruß
Nepumuk

AW: Übersetzte Kommentare einfügen
21.04.2015 09:47:48
Arnold
Hallo Nepumuk
Vielen Dank für deine umgehende Antwort und Tipp.
Hab das natürlich sofort geändert und erhalte nun aber die Fehlermeldung
"Fehler beim Komplimieren: Syntaxfeher" und die Zeile (.Cells(intz, 8).Value)
wird gelb markiert.
Danke für weitere Hilfe!
Arnold

AW: Übersetzte Kommentare einfügen
21.04.2015 09:50:11
Nepumuk
Hallo,
die gehört auch in die Zeile darüber, hinter AddComment.
Gruß
Nepumuk

Anzeige
AW: Übersetzte Kommentare einfügen
21.04.2015 09:57:22
Arnold
Hallo Nepumuk, Hallo Franz
Nepumuk
Vielen Dank für deinen wertvollen Hinweise, habes nun "geschnallt" Code nach deinen Vorgaben angepasst und es funktioniert!
Franz
Dein ausgeschmückter Code ist ja erste Sahne. So sieht der rückgelesene Kommentar wirklich sehr gut aus.
Viiiiiiiiiiiielen Dank euch beiden für eure wertvolle Unterstützung!

AW: Übersetzte Kommentare einfügen
21.04.2015 09:46:54
Wolfgang
Moin Moin, die AddComment-Zeile scheint korrekt zu sein. Bitte markiere die Zeile, in der der Fehler auftritt und die genaue Fehlermeldung dazu!
Gruß, Wolfgang

AW: Übersetzte Kommentare einfügen
21.04.2015 09:51:07
fcs
Hallo Arnold,
das Grundproblem hat nepumuk ja schon beschrieben.
Ich hab dein Makro auch nochmals ein wenig ausgeschmückt inkl. Formatierung der Kommentarbox..
Außerdem sollte man Variablen für Zeilennummern generell als Long deklarieren, Da Tabellen mehr Zeilen haben als der Zahlenbereich für Integer-Variablen.
Gruß
Franz
Sub KommentarEinfügen()
Dim notiz As Comment
Dim lngZ As Long
Dim lngMax As Long
Dim strBezug As String
Dim wks As Worksheet
For Each wks In ActiveWorkbook.Worksheets
For Each notiz In wks.Comments
notiz.Delete
Next notiz
Next wks
With Sheets("Kommentar-Text") 'Name des Tabellenblattes in welchem die Kommentare erfasst  _
sind
lngMax = .Cells(.Rows.Count, 1).End(xlUp).Row
For lngZ = 2 To lngMax
strBezug = Sheets("Kommentar-Text").Cells(lngZ, 2).Value
Sheets(.Cells(lngZ, 1).Value).Range(strBezug) _
.AddComment .Cells(lngZ, 8).Value
Next lngZ
End With
End Sub
Sub KommentarEinfügen_Neu()
Dim notiz As Comment
Dim lngZ As Long
Dim lngMax As Long
Dim strBezug As String
Dim wks As Worksheet
Dim Zelle As Range
For Each wks In ActiveWorkbook.Worksheets
For Each notiz In wks.Comments
notiz.Delete
Next notiz
Next wks
With Sheets("Kommentar-Text") 'Name des Tabellenblattes in welchem die Kommentare erfasst  _
sind
lngMax = .Cells(.Rows.Count, 1).End(xlUp).Row
For lngZ = 2 To lngMax
strBezug = Sheets("Kommentar-Text").Cells(lngZ, 2).Value
Set Zelle = Sheets(.Cells(lngZ, 1).Value).Range(strBezug)
Zelle.AddComment "Koordination" _
& Chr(10) & "DE: " & .Cells(lngZ, 3).Value _
& Chr(10) & "FR: " & Mid(.Cells(lngZ, 5).Value, 3) _
& Chr(10) & "IT: " & Mid(.Cells(lngZ, 7).Value, 3)
Set notiz = Zelle.Comment
With notiz
With .Shape
.TextFrame.Characters(1, 12).Font.Bold = True
.Width = 200
.Height = 100
End With
End With
Next lngZ
End With
End Sub

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige