Office: (Office 2007) Kommentarfeld-Größe automatisch anpassen

Helfe beim Thema Kommentarfeld-Größe automatisch anpassen in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo Excel-Experten *Smilie wieder mal eine Frage eines Anfängers ... ich möchte die Kommentarfeld-Größe automatisch an den Inhalt anpassen. Leider... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von can, 17. Mai 2011.

  1. Kommentarfeld-Größe automatisch anpassen


    Hallo Excel-Experten *Smilie
    wieder mal eine Frage eines Anfängers ...
    ich möchte die Kommentarfeld-Größe automatisch an den Inhalt anpassen. Leider war es mir noch nicht möglich hier ein geeignetes Thema zu finden, mit dem ich klar komme.
    Mein Code formatiert zwar automatisch, jedoch sehe ich einen Teil mancher Kommentare nicht, wenn kein Zeilenumbruch im Text ist... also die Zeile geht über den Bildschirmrand *eek.gif*
    Kann man den Code so ändern, dass ich die Breite vorgebe und die Höhe variabel lasse?

    Das ist mein aktueller Code:


    Code:
    :)
     
  2. Hallo ?,

    vielleicht so.

    ' **********************************************************************
    ' Modul: Modul1 Typ: Allgemeines Modul
    ' **********************************************************************
    Option Explicit
    Const maxLength As Long = 85 'Maximale Zeichen pro Zeile
    Private Sub AutosizeComments()
    Dim Cell As Range
    For Each Cell In ActiveSheet.Cells.SpecialCells(xlCellTypeComments)
    With Cell.Comment.Shape.TextFrame
    .Characters.text = breakText(.Characters.text, maxLength)
    .AutoSize = True
    End With
    Next
    End Sub

    Private Function breakText(ByVal text As String, ByVal länge As Long) As String
    Dim tmp As String, str As String
    Dim lenT As Integer, i As Integer, n As Integer
    text = Replace(text, vbLf, " ")
    lenT = Len(text)
    n = 1
    i = 1
    Do
    tmp = Mid(text, i, länge)
    If lenT - i >= länge Then
    n = Len(tmp) - InStr(1, StrReverse(tmp), " ") + 1
    Else
    n = Len(tmp)
    End If
    str = str & Trim(Left(tmp, n)) & vbLf
    i = i + n
    Loop While i < lenT
    breakText = Left(str, Len(str) - 1)
    End Function





    « Gruß Sepp »
     
    josef e, 21. Mai 2011
    #2
  3. Hallo Sepp,

    vielen Dank für die erstklassige Antwort/Lösung.
    Einen kleinen Fehler hat das Makro aber noch.. bei längeren Texten hört er Teilweise auf einen Zeilenumbruch zu generieren.
    Kannst du mir sagen woran das liegen könnte?

    außerdem muss man folgende Zeile mit ins Makro schreiben *Smilie

    Code:
    Danke,
    Can
     
  4. Kommentarfeld-Größe automatisch anpassen

    ich hab mir das Ergebnis noch einmal genau angeschaut.
    Die Zeilenumbrüche in den Kommentaren werden bis einschlißlich der 4. Zeile gemacht!
    also werden ab der 5. Zeile keine Umbrüche generiert!

    Ich bitte um Hilfe *Smilie ich finde keinen Grund, wieso das Makro nur bis zur 4. Zeile "richtig" funktioniert. -.-

    Viele Grüße Can
     
  5. Hallo ?,

    was du mit

    meinst, erschließt sich mir nicht.

    Bei längeren Kommentaren darf man nicht mit ".Characters.Text" arbeiten, weil dessen Länge auf 255 Zeichen begrenzt ist.

    So geht's auch mit langen Kommentartexten.


    ' **********************************************************************
    ' Modul: Modul1 Typ: Allgemeines Modul
    ' **********************************************************************
    Option Explicit
    Const maxLength As Long = 90 'Maximale Zeichen pro Zeile
    Private Sub AutosizeComments()
    Dim objCmnt As Comment, strTmp As String
    For Each objCmnt In ActiveSheet.Comments
    With objCmnt
    .Text breakText(.Text, maxLength)
    .Shape.TextFrame.AutoSize = True
    End With
    Next
    End Sub

    Private Function breakText(ByVal Text As String, ByVal länge As Long) As String
    Dim tmp As String, str As String
    Dim lenT As Integer, i As Integer, n As Integer
    Text = Replace(Text, vbLf, " ")
    lenT = Len(Text)
    n = 1
    i = 1
    Do
    tmp = Mid(Text, i, länge)
    If lenT - i >= länge Then
    n = Len(tmp) - InStr(1, StrReverse(tmp), " ") + 1
    Else
    n = Len(tmp)
    End If
    str = str & Trim(Left(tmp, n)) & vbLf
    i = i + n
    Loop While i < lenT
    breakText = Left(str, Len(str) - 1)
    End Function



    « Gruß Sepp »
     
    josef e, 24. Mai 2011
    #5
  6. Sorry, wegen dem

    das hat sich erledigt *Smilie

    Jetzt komme ich leider immer noch nicht weiter, da mir das Makro nichts mehr in die Kommentarfenster schreibt, jedoch wird die Fenstergröße formatiert.

    ich bin am verzweifeln ^^
     
  7. Hallo ?,

    lade die Datei hoch in der der Code nicht läuft.




    « Gruß Sepp »
     
    josef e, 26. Mai 2011
    #7
Thema:

Kommentarfeld-Größe automatisch anpassen

Die Seite wird geladen...
  1. Kommentarfeld-Größe automatisch anpassen - Similar Threads - Kommentarfeld Größe automatisch

  2. Größe des Kommentarfeldes dauerhaft vergrößern.

    in Microsoft Excel Hilfe
    Größe des Kommentarfeldes dauerhaft vergrößern.: Hallo, seit Stunden versuche ich einen Weg zu finden, um die Kommentarfelder in Excel dauerhaft zu vergrößern. Ich möchte also nicht einzeln die Felder vergrößern, sondern das standardmäßige...
  3. nicht editierbare Kommentarfelder in Excel

    in Microsoft Excel Hilfe
    nicht editierbare Kommentarfelder in Excel: Hallo, ich bin leider mit zwei linken Händen gestraft was Computer betrifft und daher wende ich mich hier an die Allgemeinheit. Ich habe gestern noch eine Tabelle in Excel (Windows 7er version)...
  4. Kommentarfeld soll von mehreren Benutzern geändert werden können

    in Microsoft Access Hilfe
    Kommentarfeld soll von mehreren Benutzern geändert werden können: Hallo zusammen, kann mir jemand mal erklären welche Einstellungen oder Befehle ich verwenden muss das in einem Formular ein Kommentarfeld von mehreren Benutzern abgeändert werden kann, aber so...
  5. Kommentierte Zellen in Excel nach Makro lauf wieder richtig zuordnen

    in Microsoft Excel Hilfe
    Kommentierte Zellen in Excel nach Makro lauf wieder richtig zuordnen: Hallo Zusammen, ich habe mir ein Makro erstellt, mit dem ich mir woechentlich aus einer lebenden Excel Liste eine Uebersichtlichere Liste erstellt habe. In meiner Liste wurden dann...
  6. Kommentarfeld Größe automatisch anpassen

    in Microsoft Excel Hilfe
    Kommentarfeld Größe automatisch anpassen: Hi Leute, ich hoffe ihr könnt mir helfen. Ich habe folgenden Code in einem Modul: ------------------------------------------------ Option Explicit Function SetComment(rngBezug As...
  7. neuartige Kommentarfelder in Excel 2007

    in Microsoft Excel Hilfe
    neuartige Kommentarfelder in Excel 2007: Hallo, ich habe heute ein neues Berechnungsprogramm bekommen. Da gibt es schöne Kommentarfelder. Wie macht man die? Es sind nicht die mit dem roten eck!
  8. Text aus anderen Bereichen in ein Kommentarfeld kopieren

    in Microsoft Excel Hilfe
    Text aus anderen Bereichen in ein Kommentarfeld kopieren: Hallo, ich habe z.B. in einer Arbeitsmappe oder in Word einen kleinen Hinweis geschrieben, diesen möchte ich nun in einer anderen Excel-Tabl. in ein Kommentar-Fenster reinkopieren, ohne dass...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden