Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1888to1892
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

Kommentare zurückschreiben (Tricky)

Kommentare zurückschreiben (Tricky)
07.07.2022 16:44:08
Danny
Hallo zusammen,
ich habe es letzte Woche geschafft aus meinen 100 Arbeitsmappen alle Kommentare raus schreiben zu können in eine Tabelle.
Jetzt ist die Übersetzung zurück vom Übersetzungsbüro.
Doch irgendwie weiß ich nicht, wie ich sie zurückschreiben soll.
Ich denke man kann mit 2 Variablen arbeiten, da ja Arbeitsmappe und die Zelle bekannt ist.
Tricky ist aber das ich eine Abfrage machen muss in welcher Sprache (und damit welche Spalte) er in diese Zelle schreibt.
Je nach Endung der Arbeitsmappe ist es eine andere Spalte.
Anbei auch ein Bild von der Kommentartabelle.
Ich hoffe auf eure Hilfe.
Danke viel mal.
Userbild

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kommentare zurückschreiben (Tricky)
07.07.2022 17:07:26
UweD
Hallo
Das ist ein Excelforum und kein Forum für Bildbearbeitung :-)
1. kann ich nichts erkennen
2. das tippt hier niemand ab, um das zu testen
Lade doch eine abgespeckte Musterdatei hoch
LG UweD
AW: Kommentare zurückschreiben (Tricky)
08.07.2022 08:06:06
Danny
Danke für den Tipp. Das Bild war nur zur Veranschaulichung.
Anbei die Excel Datei mit ein paar Arbeitsmappen als Beispiel.
https://www.herber.de/bbs/user/154054.xlsm
AW: Kommentare zurückschreiben (Tricky)
08.07.2022 09:51:19
UweD
Hallo
versuch es so

Sub Kommentare_zurück()
Dim Tb As Worksheet, LR As Integer, i As Integer, Z1 As Integer, SP As Integer
Dim Sprache As String, Blatt As String, Zelle As String, Autor As String, Üb As String
Set Tb = Sheets("Kommentare")
Z1 = 2 'Erste Datenzeile
Sprache = InputBox("Welche Sprache soll verwendet werden?" & vbLf & vbLf & _
"D, EN, FR, ES, IT, PT", , "EN")
Select Case Sprache
Case "D": SP = 4
Case "EN": SP = 5
Case "FR": SP = 6
Case "ES": SP = 7
Case "IT": SP = 8
Case "PT": SP = 9
Case Else
MsgBox "Fehler Eingabe"
Exit Sub
End Select
LR = Tb.Cells(Tb.Rows.Count, SP).End(xlUp).Row 'letzte Zeile der Spalte
For i = Z1 To LR
Blatt = Tb.Cells(i, 1)
Zelle = Tb.Cells(i, 2)
Autor = Tb.Cells(i, 3)
Üb = Tb.Cells(i, SP)
With Sheets(Blatt).Range(Zelle)
.Comment.Text Text:=Autor & ":" & vbLf & vbLf & Üb
.Comment.Shape.TextFrame.Characters(Start:=1, Length:=Len(Autor) + 1).Font.FontStyle = "Fett"
.Comment.Shape.TextFrame.Characters(Start:=Len(Autor) + 2, Length:=Len(Üb) + 2).Font.FontStyle = "Standard"
End With
Next
End Sub
LG UweD
Anzeige
AW: Kommentare zurückschreiben (Tricky)
08.07.2022 12:06:12
Danny
Ich habe es mal versucht aber irgendwie schreibt er den Kommentar nicht rein.

Sub Kommentarezurückspielen()
Dim Blatt As String
Dim Zelle As String
Dim ws As Worksheet
Dim a, n As Integer
Dim s, z As Integer
Dim zeile As Long
Dim blattname As String
Dim blattname2 As String
s = 1
z = 2
For i = 2 To 10
'LR = ws.Cells(Tb.Rows.Count, 1).End(xlUp).Row 'letzte Zeile der Spalte
Debug.Print i
blattname = Worksheets("Kommentare").Cells(i, s).Value
Debug.Print blattname
blattname2 = Right(blattname, 2)
Debug.Print blattname2
Select Case blattname2
Case "DE": SP = 4
Case "EN": SP = 5
Case "FR": SP = 6
Case "ES": SP = 7
Case "IT": SP = 8
Case "PT": SP = 9
End Select
Debug.Print SP
Debug.Print i
Zelle = Worksheets("Kommentare").Cells(i, 2).Value
Üb = Worksheets("Kommentare").Cells(i, SP).Value
With Sheets(blattname).Range(Zelle)
.Comment.Shape.TextFrame.Characters(Start:=1, Length:=Len(Autor) + 1).Font.FontStyle = "Fett"
.Comment.Shape.TextFrame.Characters(Start:=Len(Autor) + 2, Length:=Len(Üb) + 2).Font.FontStyle = "Standard"
End With
Next
'Arbeitsmappe aus Spalte A auswählen und Activ seten
'Text aus Spalte D in position von C reinschreiben
'nächste Zeile aus Arbeitsblatt Kommentar
End Sub

Sub Kommentare_zurück()
Dim Tb As Worksheet, LR As Integer, i As Integer, Z1 As Integer, SP As Integer
Dim Sprache As String, Blatt As String, Zelle As String, Autor As String, Üb As String
Set Tb = Sheets("Kommentare")
Z1 = 2 'Erste Datenzeile
Sprache = InputBox("Welche Sprache soll verwendet werden?" & vbLf & vbLf & _
"D, EN, FR, ES, IT, PT", , "EN")
Select Case Sprache
Case "D": SP = 4
Case "EN": SP = 5
Case "FR": SP = 6
Case "ES": SP = 7
Case "IT": SP = 8
Case "PT": SP = 9
Case Else
MsgBox "Fehler Eingabe"
Exit Sub
End Select
LR = Tb.Cells(Tb.Rows.Count, SP).End(xlUp).Row 'letzte Zeile der Spalte
For i = Z1 To LR
Blatt = Tb.Cells(i, 1)
Zelle = Tb.Cells(i, 2)
Üb = Tb.Cells(i, SP)
With Sheets(Blatt).Range(Zelle)
.Comment.Shape.TextFrame.Characters(Start:=1, Length:=Len(Autor) + 1).Font.FontStyle = "Fett"
.Comment.Shape.TextFrame.Characters(Start:=Len(Autor) + 2, Length:=Len(Üb) + 2).Font.FontStyle = "Standard"
End With
Next
End Sub

Anzeige
AW: Kommentare zurückschreiben (Tricky)
08.07.2022 12:07:57
Danny
Es muss ja automatisch funktionieren, dass es ausliesst welche Sprache er in den Kommantar schreiben muss.
Dies anhand der letzten beiden Buchstaben von Spalte A (Allgemein_0_DE) somit DE. und dann den richtigen Kommentar schreiben.
AW: Kommentare zurückschreiben (Tricky)
08.07.2022 12:51:05
UweD
Hallo
du hast ja auch die eigentliche Zeile im Code vergessen.

...
With Sheets(blattname).Range(Zelle)
.Comment.Text Text:=Autor & ":" & vbLf & vbLf & Üb '***** hast du vergessen
.Comment.Shape.TextFrame.Characters(Start:=1, Length:=Len(Autor) + 1).Font.FontStyle = "Fett"
.Comment.Shape.TextFrame.Characters(Start:=Len(Autor) + 2, Length:=Len(Üb) + 2).Font.FontStyle = "Standard"
End With
...
LG UweD
Anzeige
AW: Kommentare zurückschreiben (Tricky)
08.07.2022 13:02:16
Danny
Danke dir viel mal.
Es hat geklappt. Super.
Ich danke dir viel mal.
Es ist nur eine Kleinigkeit.
Es macht komischerweise 2 Abstände nach unten bevor der Kommentar kommt. Weisst du woher das kommt?
Das es Fett ist, ist super.
Userbild
AW: Kommentare zurückschreiben (Tricky)
08.07.2022 13:18:00
Danny
Ich brauche auch den Autor nicht. Der Text Fett ohne Lehrzeichen und alles wäre ausreichend
AW: Kommentare zurückschreiben (Tricky)
08.07.2022 13:25:51
UweD
Dann reicht das

        With Sheets(Blatt).Range(Zelle)
.Comment.Text Text:=Üb
.Comment.Shape.TextFrame.Characters(Start:=1, Length:=Len(Üb)).Font.FontStyle = "Fett"
End With
LG UweD
Anzeige
AW: Kommentare zurückschreiben (Tricky)
08.07.2022 13:21:08
UweD
Hallo
ich hatte es in Anlehnung an deine vorhanden Einträge so vorgesehen.
Autor & ":" & vbLf & vbLf & Üb
vbLf = linefeed
Also Autor plus Doppelpunkt plus 2x Enter plus Übersetzung
LG UweD
AW: Kommentare zurückschreiben (Tricky)
08.07.2022 13:23:23
Danny
Hab es gerade gesehen
aber wenn ich nur:
.Comment.Text Text:=Üb
mache kommt aber leider ein Laufzeitfehler 1004 nachdem er ein paar Arbeitsmappen gemacht hat
AW: Kommentare zurückschreiben (Tricky)
09.07.2022 18:54:30
Herbert_Grom
Hallo Danny,
ich verstehe noch nicht, wie die "Kommentare & Übersetzungen" in die "Allgemein_0_DE-PT"-Sheets sollen. Erstell mir doch mal 2-3 Beispiele manuell.
Servus
AW: Kommentare zurückschreiben (Tricky)
11.07.2022 08:07:06
Danny
Das Problem,
wurde von UWE gelöst.
Es ging darum die jeden Kommentare ja nach Sprache somit _PT(Portugal) in die richtige Arbeitsmappe zu schreiben.
Anzeige
AW: Kommentare zurückschreiben (Tricky)
11.07.2022 10:02:46
Herbert_Grom
Hallo Danny,
ach und deshalb brauchst du dann noch nicht einmal mehr "Guten Tag" und "Auf Wiedersehen" zu sagen? Tja dann interessiert dich ja wohl auch nicht mein Ansatz, bei dem du nur noch ein einziges "Allgemein"-Blatt benötigst und du nur noch die Sprache und die Artikel (z. B.: Hyfra_1) auswählen brauchst, oder?
Servus

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige