@ excelent - din kode kører, men jeg vil jo helst lave den inde i koden, så man ikke skal sidde og trykke på knapper; og hvis jeg kigger i din kode har du samme linie
Til Excelent Jeg har prøvet din kommentarEditor,den ser jo smart ud, men hvorfor virker den ikke ved mig, uanset hvad jeg gør eller trykker på, så skulle den vel påvirke den kommentar eller kommentarboks i den aktive celle, men intet sker. - Hvorfor
Til Excelent Har prøvet på en anden computer, og der virker det perfekt, - den vil jeg lige gemme til brug en anden gang, idet jeg tidligere har siddet om rettet i kommentarfelter, her er den perfekt. - og så må jeg lige finde ud af hvorfor den ikke virkede på første PC. Tak for dine indlæg selv om dette ikke have noget med det egentlige spørgsmål og gøre.
For at ændre på en kommentarbox's rammestørrelse er der nogle betingelse der skal være opfyldt. Ud over at kommentaren skal være oprettet ,skal denne også være synlig
Der kan anvendes indexnr. her vælges første kommentar : ActiveSheet.Comments(1).Visible = True
I følgende eks. er anvendt RANGE metoden.
Vis kommentar i celle A1 : Range("A1").Comment.Visible = True
Derudover skal kommentarens shape (ramme) aktiveres : Range("A1").Comment.Shape.Select True
Man kan ikke bestemme en rammes størrelse ved oprettelse (så vidt jeg ved) Men alene ændre på størrelsen ved at skalere med en faktor x Hvor x er større eller mindre end 1 (1 er således neutral og ændrer ikke noget)
For at forøge rammens størrelse skal x være fra 1.01 og op til ? (har testet med 20) Her vil 1.01 være en lille forøgelse og 5 en stor
For at formindske rammens størrelse skal x være mindre en 1 fx. 0.9 for lille formindskelse og 0.1 for større formindskelse,- x kan også være negativ
Denne påvirker rammens bredde Selection.ShapeRange.ScaleWidth x, msoFalse og denne rammens højde Selection.ShapeRange.ScaleHeight x, msoFalse
Lidt om Tekst i kommentar : Følgende linie ændrer ikke på en bestående tekst, kan evt. helt undlades Range("A1").Comment.Text Text:=""
Følgende linie indsætter en ny tekst og sletter evt. gl. Range("A1").Comment.Text Text:="Helt ny tekst"
Hvis du vil bevare bestående tekst og tilføje ny :
Indlæs bestående tekst i variablen txt : txt = Range("A1").Comment.Text Indsæt gl. tekst + linieskift "Chr(10)" + ny tekst : Range("A1").Comment.Text Text:=txt & Chr(10) & "Tilføjelse indsat på næste linie"
Excellent -> rigtig smart feature du har lavet der :-)
Det er dog muligt at ændre størrelsen uden at kommentaren er 'synlig' og selecteret. Det er også muligt at autosize kommentaren i forhold til tekstmængden.
Sub AutosizeComments() Dim cell As Range Dim rng As Range Set rng = Selection
On Error Resume Next For Each cell In rng '//sætter kommentarhøjde cell.Comment.Shape.Height = 300 '//sætter kommentar bredde cell.Comment.Shape.Width = 300 '//sætter autosize på 'cell.Comment.Shape.TextFrame.AutoSize = True Next
ja du har ret bak det virker fint,- det kunne jeg ikke lige finde i F1-hjælpen :-) Har specielt noteret mig Comment.Shape.TextFrame.AutoSize = True den er go :-)
Naaj.. F1-hjælpen er nok ikke den bedste hjælper man her :-) Autosize er fin, men jeg synes nu at dit nye værktøj er så smart, at den nemt kan indbygges.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.