Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
720to724
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
720to724
720to724
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Kommentare mittels VBA dynamisch einfügen

Kommentare mittels VBA dynamisch einfügen
19.01.2006 10:12:47
Hans
Hallo Excel Fans,
ich habe ein kleines Problem und hoffe auf eure Hilfe.
Ausgangsbasis:
Ich werte verschiedene Daten mit Excel aus die ich vom Host erhalte. Die 1.te Zeile ist die Überschriftzeile mit exotischen Feldnamen. Diese Feldnamen ersezte ich mittels Suche / Ersetze s. Bsp. unten. ´Nun möchte ich gerne einen Kommentar zur neuen Bezeichnung hinzufügen, darf die Zelle aber nicht direkt ansprechen da die Feldbezeichnung überall in der 1.ten Zeile stehen kann. Hat einer von euch eine Idee wie so etwas (einfach :-))funktioneren könnte.
Bsp.: Wunschdenken wäre eine Lösung wie die letzte Zeile es vorsieht, was so aber nicht funktiniert.
Rows("1:1").Select
Cells.Replace What:="MKXKPR", Replacement:="Adr-ID"
Cells.Replace What:="MKGSNR", Replacement:="SG"
Range("A1").AddComment "strategische Geschäftseinheit "
Cells.Replace What:="MKXUKP", Replacement:="Status"
Range(Text."Status").AddComment "aktueller Kreditstatus"
Für die Unterstützung im voraus vielen Dank.
Hans

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

Betreff
Datum
Anwender
Anzeige
AW: Kommentare mittels VBA dynamisch einfügen
19.01.2006 10:31:05
Josef
Hallo Hans!
Eine Möglichkeit!
Sub ReplaceAndComment()
Dim rngSearch As Range
Dim varReplace(1, 2) As String 'erste Dimension = Anzahl der Suchbegriffe minus 1! - Anpassen
Dim intIndex As Integer


varReplace(0, 0) = "MKXKPR" 'Gesucht
varReplace(0, 1) = "Adr-ID" 'Ersatz
varReplace(0, 2) = "strategische Geschäftseinheit" 'Kommentar

varReplace(1, 0) = "MKGSNR"
varReplace(1, 1) = "SG"
varReplace(1, 2) = "aktueller Kreditstatus"


For intIndex = 0 To UBound(varReplace)
  Set rngSearch = Rows("1:1").Find(what:=varReplace(intIndex, 0), lookat:=xlWhole)
  
  If Not rngSearch Is Nothing Then
    rngSearch = varReplace(intIndex, 1)
    rngSearch.AddComment varReplace(intIndex, 2)
  End If
Next

End Sub


'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
AW: Kommentare mittels VBA dynamisch einfügen
20.01.2006 15:27:07
Hans
Hallo Sepp,
zunächst herzlichen Dank für deine Unterstützung. Leider kann ich das Beispiel in der vorgegebenen Form nicht anwenden, da es sich u.U. um mehrere hunderte von Felder handeln kann. Das heißt, ich ersetze alle möglich vorkommenden Feldnamen vom Host mit eigenen. Ein Abzug/Liste vom Host für die Verwendung in Excel beinhaltet zwischen 5 und 30 Feldnamen. In deinem Beispiel müsste ich jetzt entsprechend viele Dimensionen definieren oder sehe ich das falsch? Optimal wäre es, wenn es eine Möglichkeit gibt, die .AddComment Methode gleich im Anschluß an den ersetzten Begriff zu plazieren. Kann so etwas überhaupt gehen?
Gruß Hans
Anzeige
AW: Kommentare mittels VBA dynamisch einfügen
20.01.2006 16:26:37
Josef
Hallo Hans!
Das du die zu erstzenden Begriffe, den Ersatz und den Kommentar definieren musst, ist doch klar!
Woher soll Excel wissen was du womit ersetzen willst?
Mit deinem Versuch mit "Replace", hast du ja auch den gesuchten Begriff und den Ersatz angegeben!
'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
AW: Kommentare mittels VBA dynamisch einfügen
20.01.2006 17:43:49
hans
Ist mir schon klar Sepp.
Nur habe ich es mir zu einfach vorgestellt. Von meinem Verständnis ausgehend, müsste man den Kommentar einfach nur ergänzen können (Cells.Replace What:="DXVTYP", Replacement:="Typ".AddComment("Kommentar") was so natürlich nicht funktioniert. Vermutlich blicke ich das mit deinem Lösungsansatz auch nicht ganz. Wieviele Dimensionen müssten es bei ca. 200 unterschiedlichen Kommentaren zu den Felder(Suchbegriffe) geben? Vieleicht stelle ich mich aber zu doof an :-))
Gruß Hans
AW: Kommentare mittels VBA dynamisch einfügen
20.01.2006 19:06:42
Josef
Hallo Hans!
Nein, mit "Replace", kannst du nicht gleichzeitig einen Kommentar einfügen!
Ein anderer Anzatz!
Bleiben die zu ersetzenden Überschriften, die neue Überschrift und die Kommentare
immer gleich, dann könntest du eine Liste erstellen. Entweder eine Textdatei nach dem
Schema "Begrif;Ersatz;Kommentar", oder auch eine Exceltabelle mit den entsprechenden
Eintragungen in drei Spalten, in der alle möglichen Fälle mit ihren Ersatzwerten
aufgelistet sind.
Dann könnte man ein Makro erstellen, das die Überschriften
mit den Einträgen in der textdatei/Tabelle vergleicht und ersetzt!
Irgendwo wirst du die Gegenüberstellung auflisten müssen!
'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
AW: Kommentare mittels VBA dynamisch einfügen
20.01.2006 21:16:43
Hans
Hallo Sepp,
sehr gute Idee.
Ich werde das mal versuchen.
Vielen herzlichen Dank
Hans

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige