Avatar billede TTA Seniormester
21. januar 2018 - 11:41 Der er 8 kommentarer og
1 løsning

Kan ikke redigere kommentarer i Excel

Jeg har et stort regneark, hvor der til mange af cellerne er tilknyttet en kommentar. Jeg har i årevis kunne højreklikke på cellen, og vælge "Rediger kommentar" - det kan jeg af uvisse årsager ikke længere!

Jeg kan godt slette kommentaren, men altså ikke redigere den.

For at gøre mystikken total, så er det kun nogle kommentarer, der ikke længere kan redigeres, mens andre godt kan.

Hvad filan er der galt!?
Avatar billede 220661 Ekspert
21. januar 2018 - 11:45 #1
Bud herfra er at celle er beskyttet mod redigering generelt. Men der kommer sikkert en forbi der har mere tjek på det end jeg har :-)
Avatar billede TTA Seniormester
21. januar 2018 - 12:01 #2
Det er kun mig selv, der bruger regnearket, og jeg har ikke beskyttet nogen celler mod redigering. I givet fald skulle det heller ikke være muligt at slette kommentaren.
Avatar billede 220661 Ekspert
21. januar 2018 - 12:08 #3
Ja det har du ret i.overså lige at du kunne slette
Avatar billede excelent Ekspert
21. januar 2018 - 13:02 #4
Er filen delt/shared ?
Avatar billede jens48 Ekspert
21. januar 2018 - 17:30 #5
Avatar billede TTA Seniormester
22. januar 2018 - 09:50 #6
@excelent
Jeg har filen liggende på mit OneDrive. Når jeg arbejder med filen hjemmefra, så foregår det via placeringen i stifinderen, der hægtet op på OneDrive. Dvs. når jeg laver en ændring i filen, så er det også ændret online. Når jeg arbejder med filen fra mit arbejde, så er jeg nødt til at downloade filen, arbejde i den offline, og herefter uploade den og erstatte den gamle fil. Men i begge tilfælde, så kan jeg ikke redigere kommentarerne.

@Jens48
Jeg har forsøgt denne løsning; det hjælper ikke at ændre kolonnebredden.
Avatar billede TTA Seniormester
22. januar 2018 - 10:47 #7
Jeg spurgte nu en kollega, som formåede at finde en løsning, der hjalp et langt stykke hen ad vejen. At køre en makro, der kopierer indholdet af kommentarerne, sletter dem, og indsætter dem på ny. Makroen ser sådan ud:

"Sub FixComments()

Dim commRange As Range
Dim myCell As Range
Dim i As Long, strComment As String

' Skip if error encountered
On Error Resume Next

' Set the range to all cells that have comments
Set commRange = ActiveSheet.Cells.SpecialCells(xlCellTypeComments)

' Message user if no comments found
If commRange Is Nothing Then
MsgBox "no comments found"
Exit Sub
End If

' Loop through the cells in the set range
For Each myCell In commRange

' Put the text found in the comment into a variable
strComment = myCell.Comment.Text

' Delete the comment
myCell.Comment.Delete

' Add a new comment
myCell.AddComment

' Put the text that we stored in the variable into the new comment
myCell.Comment.Text Text:=strComment

' Move to next comment
Next

' Message user that it finished
MsgBox "All Done!", vbOKOnly + vbInformation

End Sub"

Eneste hage ved denne løsning er at al formatering af cellerne forsvinder, dvs. alle kommentar-cellerne får samme størrelse (som når man selv opretter en ny celle), og af en eller anden grund bliver teksten ændret fra Tahoma/fed/9 til Tahoma/normal/9. Jeg kan nok leve med det, men hvis nogen ved om man kan få en makro til at beholde størrelse og skifttype i cellerne, så hører jeg gerne om det!
Avatar billede jens48 Ekspert
22. januar 2018 - 11:05 #8
Måske kan denne makro klare det. Den er egentlig blot beregnet til at resette kommnetarerne.

Sub CommentFix()

' This macro modifies all comments in all open workbooks to:
' (1) move and size with cells
' (2) be physically positioned near the cell to which they correspond
' (3) be optimally sized appropriate to the text within
' This macro was created by combining code posted on the following website:
' http://www.contextures.com/xlcomments03.html

Dim thisfile As Workbook
Set thisfile = ActiveWorkbook
Dim MyWorkbook As Workbook
Dim MySheet As Worksheet
Dim MyComment As Comment
Dim CommentCount As Long
Dim lArea As Long
Dim fixed As Boolean
fixed = False
On Error GoTo NeedToUnprotect
For Each MyWorkbook In Workbooks
MyWorkbook.Activate
For Each MySheet In MyWorkbook.Sheets
MySheet.Activate
CommentCount = 0
For Each MyComment In MySheet.Comments
With MyComment.Shape
.Placement = xlMoveAndSize
.Top = MyComment.Parent.Top + 5
.Left = MyComment.Parent.Offset(0, 1).Left + 5
.TextFrame.Characters.Font.Name = "Tahoma"
.TextFrame.Characters.Font.Size = 8
.TextFrame.AutoSize = True
CommentCount = CommentCount + 1
End With
If MyComment.Shape.Width > 300 Then
lArea = MyComment.Shape.Width * MyComment.Shape.Height
MyComment.Shape.Width = 200
MyComment.Shape.Height = (lArea / 200) * 1.1
End If
Next MyComment
If CommentCount > 0 Then
MsgBox ("A total of " & CommentCount & " comments in worksheet '" & MySheet.Name & "' of workbook '" & MyWorkbook.Name & "'" & Chr(13) & "were repositioned and resized.")
fixed = True
End If
Next MySheet
Next MyWorkbook
thisfile.Activate
If fixed = False Then
MsgBox ("No comments were detected.")
End If
On Error GoTo 0
Exit Sub

NeedToUnprotect:
MsgBox ("You must unprotect all worksheets before running the macro.")
thisfile.Activate
Exit Sub

End Sub
Avatar billede TTA Seniormester
23. januar 2018 - 10:04 #9
Nu havde jeg desværre kørt den anden makro, så typografien og størrelsen på kommentarcellerne var blevet ændret. Jeg havde dog en gammel version af regnearket, så jeg kunne kopiere nogle af cellerne fra dette ark. Jeg opdagede så at jeg bare kunne kopiere de celler, der kun bestod af data, dvs. ikke havde referencer til andre celler/faner. Så der var ikke så meget arbejde i det alligevel. Men vil huske på makroen, hvis kommentarerne ”låser” igen.
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester