Kommentar auslesen

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

Betrifft: Kommentar auslesen
von: SteffenS
Geschrieben am: 25.04.2005 21:46:00
Hallo und guten Abend,
ich brauche bei einem schwierigen Fall Eure Hilfe.
Und zwar schreibe ich per Code(Userform) in eine Tabelle einen Kommentar.
Dies sieht so aus:
Cells(ActiveCell.Row, ActiveCell.Column).Comment.Text Text:="best case: " & best_case.Value & vbLf & "Memo: " & memo_best.Value & vbLf & "worst case: " & worst_case.Value & vbLf & "Memo: " & memo_worst.Value
Ich möchte nun in eine Msgbox die Zeichen des Kommentares auslesen die hinter dem
Wort Memo:
stehen und bis zum nächsten Zeilenumbruch dauern
In diesem Fall müssten es zwei Werte sein, weil zweimal "Memo:" vorkommt.
Wie kann ich dies erreichen
Danke Euch schonmal
Steffen Schmerler

Bild

Betrifft: AW: Kommentar auslesen
von: Hajo_Zi
Geschrieben am: 26.04.2005 06:07:14
Hallo Steffen,
der erste Teil mit Instr zu dem zweiten Problem fällt mir nur eine Schleife ein und prüfen jdes Zeichens.

Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Betriebssystem XP Home SP2 und Excel Version 2003 SP1.



"Wer Rechtschreibfehler findet, darf sie behalten!" Dies gilt auch für Bert.
Bild

Betrifft: bitte nochmal Hilfe
von: SteffenS
Geschrieben am: 26.04.2005 12:03:42
Hallo Hajo,
wie geht das mit dem kürzen.
Ich habe davon nicht so die Ahnung, vielleicht kannst Du mir Anhand des Beispiels helfen?
Danke Dir
Steffen
Bild

Betrifft: AW: Kommentar auslesen
von: MichaV
Geschrieben am: 26.04.2005 13:18:23
Hi,
vielleicht hilft Dir das mehr:


      
Dim strText As String
Dim strAusgabe As String
Dim intPosMarker As Integer
Dim intPosLf As Integer
Dim strMarker As String
strText = _
"best case: " & "best_case.Value" & vbLf & _
"Memo: " & "#memo_best.Value#" & vbLf & _
"worst case: " & "worst_case.Value" & vbLf & _
"Memo: " & "#memo_worst.Value#"
strMarker = "Memo: "
intPosMarker = InStr(strText, strMarker)
intPosLf = InStr(strText, vbLf)
While intPosLf > 0 And intPosMarker > 0
  strText = Right(strText, Len(strText) - intPosMarker + 1)
  intPosLf = InStr(strText, vbLf)
  
If intPosLf = 0 Then
    strAusgabe = strAusgabe & Right(strText, Len(strText) - Len(strMarker)) & vbCrLf
  
Else
    strAusgabe = strAusgabe & Mid(strText, Len(strMarker) + 1, intPosLf - Len(strMarker) - 1) & vbCrLf
  
End If
  strText = Right(strText, Len(strText) - intPosLf + 1)
  intPosMarker = InStr(strText, strMarker)
  intPosLf = InStr(strText, vbLf)
Wend
If strAusgabe > "" Then MsgBox strAusgabe 

     Code eingefügt mit Syntaxhighlighter 3.0

Auf Kommentare hab ich aufgrund Deines Levels verzichtet.
Gruß- Micha
PS: Rückmeldung wäre nett
PPS: Der Code funzt mit beliebig vielen "Memo: "
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Kommentar auslesen"