• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Opmerkingen aanpassen

  • Onderwerp starter Onderwerp starter HJ25
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

HJ25

Gebruiker
Lid geworden
30 jan 2013
Berichten
304
Wanneer ik in een cel in een excelbestand een opmerking plaats, dan kan ik aangeven of ik deze zichtbaar wil maken of niet. Wanneer ik hem zichtbaar maak dan komt er netjes een vakje met de opmerking er in te staan. Deze kan ik dan verplaatsen, aanpassen e.d.. Helaas komt er een pijl bij die naar de hoek van de cel wijst waar de opmerking bij geplaatst is. Wanneer ik het bestand uitprint dan wordt ook netjes de opmerking geprint, alleen vind ik dat de pijl niet duidelijk genoeg aangeeft om welk cel het gaat. Is de plaats van de cel waar de pijl heen wijst aan te passen? Of is hier een andere manier voor waardoor ik wel kan zien om welke cel het gaat maar die pijl er niet bij heb? (Printen aan het eind van de pagina vind ik ook niet duidelijk genoeg)
 
Ik heb een macrootje waarmee de tekst van een Comment gekopieerd wordt en geplakt in een Vorm, categorie Toelichting.
Probeer maar uit. Selecteer de cellen met een opmerking en run de macro. Je kunt in de code het uiterlijk van de vorm aanpassen.

(Is oude code, zie nu dat ie misschien niet helemaal mooie vorm geeft bij 2007)


Code:
Option Explicit

Sub CommentToCallout()
    Dim cel As Range
    Dim txtComment, Usersel As String
    Dim L, t As Single
    Usersel = Selection.Address
    txtComment = ""
    For Each cel In Selection
        On Error Resume Next    'Als er geen comment in de cel is gewoon verdergaan
        txtComment = cel.Comment.Text
        If Not txtComment = "" Then
            L = cel.offset(0, 1).Left
            t = cel.Top
            ActiveSheet.Shapes.AddShape(msoShapeLineCallout3, _
                L + 40, t - 20, 150#, 90#).Select
            Selection.Characters.Text = txtComment
            Selection.ShapeRange.Adjustments.Item(1) = -0.27
            Selection.ShapeRange.Adjustments.Item(2) = 0.235
            Selection.Font.Size = 8
            
            'Selection.AutoSize = True 'als je autosize aanzet, springt de
            'wijzer al naargelang de tekstgrootte, weg van de cel waarnaar deze
            'moet wijzen. Dat is dus niet goed, daarom uitgezet.

            txtComment = ""
        End If
    Next cel
    
    Range(Usersel).Select
End Sub
 
Ik werk nog niet zo lang met die codes dus weet niet hoe dat precies moet. Ik werk nu nog in excel 2003, misschien kan je die code eens invoeren in de bijlage?
Bekijk bijlage Map1.xls
 
Alt+F11 (Krijg je VBA-scherm)
In de VBAProject-verkenner (links in beeld) doe rechtermuisklik op je bestandsnaam - Invoegen - Module (of klik/selecteer de bestandsnaam en dan via menu Invoegen - Module)

Plak de code in de nieuw aangemaakte module

In Excel worksheet: selecteer cel(len) die opmerking bevatten, doe Alt+F8, klik macro CommentToCallout
 
Jaa dit lijkt me goed! Kan dit ook automatisch bij nieuwe opmerkingen?
 
Pas wel op dat je door het uitvoeren van een macro vaak (altijd?) Ongedaan maken kwijtraakt.
 
Test of een cel een opmerking bevat:

Code:
Option Explicit 
Sub testCom() 
    On Error Goto no1 
    If Not ActiveCell.Comment.Text = "" Then 
        MsgBox "Has comment" 
    End If 
    Exit Sub 
no1: 
    MsgBox "No Comment" 
End Sub

Lastiger is om na te gaan of er al een tekstvak/toelichting van een opmerking is aangemaakt. Je loopt het risico dat er telkens tekstvakken aangemaakt worden elke keer dat je de cel wijzigt.
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan