Kommentar (aus Zelle) in Variable schreiben

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
InputBox MsgBox
Bild

Betrifft: Kommentar (aus Zelle) in Variable schreiben
von: Axel
Geschrieben am: 23.04.2005 16:09:08
Hallo zusammen,
ich habe angefangen zu programmieren (seit 1 Woche) und schaffe es nicht, einen Kommentar in eine Variable zu schreiben. Irgendwie mache ich wohl noch Syntax Fehler. Kann mir jemand helfen ?
Folgendes Beispiel funktioniert bei mir nicht :
Dim Wert3 as Comment
Wert3 = ActiveCell.Offset(rowOffset:=(k - 3) * (-1), columnOffset:=0).Comment.Text
In die Variable Wert3 soll der Kommenta - der ein paar Zellen weiter oben steht - geschrieben werden.
Danke für einen Tip
Gruss, Axel

Bild

Betrifft: AW: Kommentar (aus Zelle) in Variable schreiben
von: Nepumuk
Geschrieben am: 23.04.2005 16:23:18
Hallo Axel,
der Text ist eine Zeichenkette und kein Comment - Objekt. Also:
Dim Wert3 as String
Gruß
Nepumuk
Bild

Betrifft: AW: Kommentar (aus Zelle) in Variable schreiben
von: Axel
Geschrieben am: 23.04.2005 16:30:20
Danke Nepumuk,
aber es geht noch immer nicht. Vielleicht habe ich mich auch nicht ganz korrekt ausgedrückt. Ich möchte aus einer Zelle die einen Kommentar enthält nur den Kommentar auslesen und dann in eine Variable schreiben. Wahrscheinlich ziemlich simpel.
Danke für eine Antwort,
gruss, Axel
Bild

Betrifft: AW: Kommentar (aus Zelle) in Variable schreiben
von: Nepumuk
Geschrieben am: 23.04.2005 16:37:38
Hallo Axel,
bist du dir sicher, das die Berechnung der Adresse stimmt? Wird eine Fehlermeldung ausgegeben? Ich habe das getestet und es funktioniert einwandfrei. Ersetze mal die Zeile:
Wert3 = ActiveCell.Offset(rowOffset:=(k - 3) * (-1), columnOffset:=0).Comment.Text
durch diese beiden und schau wo dein Cursor landet.
ActiveCell.Offset(rowOffset:=(k - 3) * (-1), columnOffset:=0).Select
Stop
Gruß
Nepumuk

Bild

Betrifft: AW: Kommentar (aus Zelle) in Variable schreiben
von: Axel
Geschrieben am: 23.04.2005 16:50:08
Hallo Nepumuk,
vielen Dank für Deine Mühe, es geht leider nocht nicht. Ich habe 2x den gleichen Befehl, nur das eine mal lese ich den Wert des Feldes aus, das andere mal will ich den Kommentartext aus dieser Zelle auslesen, und da steigt mein Programm aus.
hier mal das Listing des Programms.
Danke im voraus für Deine Antwort

Sub Hauptprog()
'_______________________________________________________________
' Name :    Hauptprogramm
' Datum :   24.4.05
' Autor :   Axel Chudzik
' Dieses Programm liest aus einer vorgegeben Matrix (Checkliste
' Kundenanforderungen) die bestehenden aktuellen Forderungen aus,
' diese Daten werden dann in Tabelle2 gesammelt und sollen danach
' in eine Word Datei, um eine fertige Korrespondenz/Anfrage dem
' Kunden zu senden
Dim KdNr As Long
Dim CheckDat As Date
Dim CheckTyp As String
Dim Zähl As Integer
Dim i As Integer
Dim Wert1 As String
Dim Wert2 As String
Dim Wert3 As String
Const Forderung1 = "Allgemeine Vereinbarungen"
Const Forderung2 = "QM-Forderungen"
Const Forderung3 = "Reklamationen"
Const Forderung4 = "Lieferbedingungen"
Const Forderung5 = "Umweltrichtlinien"
Dim BereichSpalte As Range
Set BereichSpalte = Range("c1:c500")
Dim BereichZeile As Range
Set BereichZeile = Range("e3:cc3")
Sheets("Tabelle2").Select
Cells.Clear
Columns("A:A").ColumnWidth = 3
Columns("B:B").ColumnWidth = 3
Columns("C:C").ColumnWidth = 10
Columns("D:D").ColumnWidth = 50
Sheets("Tabelle1").Select
On Error GoTo fehler
Beginn:
i = 0
KdNr = InputBox("Geben Sie die Kd.Nr. ein!", _
 "KundenNummer eingeben")
If IsNumeric(KdNr) Then
 Else
 MsgBox "Bitte Ziffern eingeben"
 GoTo Beginn
End If
' Suchen der eingegebenen Kunden Nummer
Range("a1").Select
   Cells.Find(What:=KdNr, After:=ActiveCell, LookIn:=xlValues, LookAt:= _
        xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False) _
        .Activate
k = ActiveCell.Row                                      ' Erfassen der gefundenen Zeile
j = 1                                                   ' Schleifenzähler für Tabelle 2
ActiveCell.Offset(0, 2).Activate
For Zähl = 1 To ActiveSheet.UsedRange.Columns.Count     ' Schleife mit Abtastung WerteBreite
    i = i + 1
    If IsEmpty(ActiveCell.Value) Then                   ' Abprüfung Datum in Kundenforderung
                                                        ' Falls leer gehe zum nächsten Feld
    Else                                                ' Falls nicht leer ...
        Wert1 = ActiveCell.Value                        ' Datumswert
        Wert2 = ActiveCell.Offset(rowOffset:=(k - 3) * (-1), columnOffset:=0).Value ' Text Kundenanforderungen
        Wert3 = ActiveCell.Offset(rowOffset:=(k - 3) * (-1), columnOffset:=0).Comment.Text ' Text aus Kommentarfeld
        Worksheets("Tabelle2").Activate                 ' Aktiviere Tabelle 2
        Range("a1").Select                              ' Setze Koordinate
        ActiveCell.Offset(j, 2).Value = Wert1           ' Schreibe Datum
        ActiveCell.Offset(j, 3).Value = Wert2           ' Schreibe Kundenanforderung
        ActiveCell.Offset(j, 4).Value = Wert3           ' Schreibe spezielle Forderung (Kommentar)
        j = j + 1
        Worksheets("Tabelle1").Activate
    End If
        ActiveCell.Offset(rowOffset:=0, columnOffset:=1).Activate   ' Spalte um 1 nach rechts
Next Zähl                                                ' Schleifenende
' Aufrufen und schreiben in Word Datei
Exit Sub
fehler:
 MsgBox "Sie haben keine gültige Kd.Nr. eingegeben!"
 GoTo Beginn
End Sub

Bild

Betrifft: AW: Kommentar (aus Zelle) in Variable schreiben
von: Nepumuk
Geschrieben am: 23.04.2005 17:02:41
Hallo Axel,
<<und da steigt mein Programm aus>>
Mit einer Fehlermeldung oder wie oder was?
Gruß
Nepumuk
Bild

Betrifft: AW: Kommentar (aus Zelle) in Variable schreiben
von: Axel
Geschrieben am: 23.04.2005 17:16:50
er steigt aus der Schleife aus !
Gruss Axel
Bild

Betrifft: AW: Kommentar (aus Zelle) in Variable schreiben
von: Nepumuk
Geschrieben am: 23.04.2005 17:19:09
Hallo Axel,
so kommen wir nicht weiter. Kommentiere mal die On Error - Anweisung aus. Ich brauche die Fehlermeldung.
Gruß
Nepumuk
Bild

Betrifft: AW: Kommentar (aus Zelle) in Variable schreiben
von: Axel
Geschrieben am: 23.04.2005 17:37:19
Hallo Nepumuk,
ich werde erst morgen Vormittag weitermachen, da ich jetzt eine Verabredung
habe. Vielleicht schaust Du morgen Mittag nochmal rein.
Danke und einen schönen Abend noch
Gruss,Axel
Bild

Betrifft: AW: Kommentar (aus Zelle) in Variable schreiben
von: andre
Geschrieben am: 23.04.2005 18:54:31
Hallöchen,
kann eigentlich nur zwei Ursachen haben
- die Zelle ist nicht erreichbar, weil z.B der Offset aus der Tabelle führt
- es ist kein Kommentar drin
Bild

Betrifft: AW: Kommentar (aus Zelle) in Variable schreiben
von: Axel
Geschrieben am: 24.04.2005 14:05:09
Hallo nochmal gemeinsam,
also nochmal :
beim Auslesen des Kommentarfeldes in die Variable "Wert3" steigt das Programm aus mit dem Fehler :
Laufzeitfehler 91
Objektvariable oder With-Blockvariable nicht festgelegt
Die Variablen Wert1, Wert2, Wert3 sind anfangs mit
Dim Wert1 as String definiert.
Was zum Teufel mache ich bloss falsch ?
Danke für Eure Hilfe
Gruss, Axel
Wert1 = ActiveCell.Value ' Datumswert
Wert2 = ActiveCell.Offset(rowOffset:=(k - 3) * (-1), columnOffset:=0).Value ' Text Kundenanforderungen
Wert3 = ActiveCell.Comment.Text ' Text aus Kommentarfeld
Worksheets("Tabelle2").Activate ' Aktiviere Tabelle 2
Range("a1").Select ' Setze Koordinate
ActiveCell.Offset(j, 2).Value = Wert1 ' Schreibe Datum
ActiveCell.Offset(j, 3).Value = Wert2 ' Schreibe Kundenanforderung
ActiveCell.Offset(j, 4).Value = Wert3 ' Schreibe spezielle Forderung (Kommentar)
j = j + 1
Worksheets("Tabelle1").Activate
Bild

Betrifft: AW: Kommentar (aus Zelle) in Variable schreiben
von: Holger
Geschrieben am: 24.04.2005 14:13:54
Hi,
bedeutet, dass die Zelle keinen Kommentar enthält.
mfg Holger
Bild

Betrifft: AW: Kommentar (aus Zelle) in Variable schreiben
von: Axel
Geschrieben am: 24.04.2005 14:19:38
Hallo Holger,
danke, Du hast recht !!!!
ich habs grad per Einzelschritt alles geprüft und zur Sekunde selbst gemerkt.
Kannst Du mir ein kurzes Beispiel geben, wie ich das Kommentarfeld auf Leer oder Nicht-Leer prüfe und dann in diese Verzweigung meinen Befehl für das Beschreiben der Variable einbaue ?
Danke für Deine Hilfe
Gruss, Axel
(bin halt noch Anfänger)
Bild

Betrifft: AW: Kommentar (aus Zelle) in Variable schreiben
von: Nepumuk
Geschrieben am: 24.04.2005 14:24:30
Hi,
du kannst das Objekt abfragen:


If Not ActiveCell.Comment Is Nothing Then ...             ' Kommentar ist vorhanden!


Gruß
Nepumuk
Bild

Betrifft: AW: Kommentar (aus Zelle) in Variable schreiben
von: Axel
Geschrieben am: 24.04.2005 14:35:20
Hallo nepumuk und Holger und André
es funktioniert !!
danke für Eure Hilfe und schönen Sonntag noch....
Gruss, Axel
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Kommentar (aus Zelle) in Variable schreiben"