Använd makrot VidIntry för att skapa en löpande summa i en cellkommentar i Excel

Anteckning

Office 365 ProPlus byter namn till Microsoft 365-appar för företag. Mer information om den här ändringen finns i det här blogginlägget.

Sammanfattning

I Microsoft Excel kan du undvika cirkelreferenser när du skapar en löpande summa genom att lagra resultatet i en del av kalkylbladet som inte beräknars. Den här artikeln innehåller ett exempel på en Microsoft Visual Basic for Applications-procedur som gör det genom att lagra en löpande summa i en cellkommentar.

Mer information

Microsoft tillhandahåller programmeringsexempel enbart i förklarande syfte och gör inga utfästelser, varken uttryckligen eller underförstått. Detta omfattar men begränsas inte till underförstådd garanti för säljbarhet eller lämplighet för ett visst syfte. I denna artikel förutsätts att du känner till det programmeringsspråk som demonstreras och de verktyg som används för att skapa och felsöka procedurer. Microsofts supportexperter kan hjälpa till att förklara funktionerna i en viss procedur, men de kommer inte att ändra dessa exempel för att tillhandahålla extra funktioner eller konstruera procedurer för att uppfylla dina specifika behov.

Skapa en löpande summa i en cell

  1. Öppna en ny arbetsbok i Microsoft Excel.

  2. Starta Visual Basic Editor (tryck på ALT+F11).

  3. Klicka på ModulInfoga-menyn.

  4. Skriv in följande makron i den här modulen:

       ' The Auto_Open name forces this macro to run every time
       ' the workbook containing this macro is opened.
    
    Sub Auto_Open()
       '  Every time a cell's value is changed,
       '  the RunningTotal macro runs.
          Application.OnEntry = "RunningTotal"
       End Sub
    
       '----------------------------------------------------------
       ' This macro runs each time the value of a cell changes.
       ' It adds the current value of the cell to the value of the
       ' cell comment. Then it stores the new total in the cell comment.
       Sub RunningTotal()
    
    On Error GoTo errorhandler      ' Skip cells that have no comment.
    
    With Application.Caller
    
       '     Checks to see if the cell is a running total by
       '     checking to see if the first 4 characters of the cell
       '     comment are "RT= ". NOTE: there is a space after the equal
       '     sign.
             If Left(.Comment.Text, 4) = "RT= " Then
    
       '        Change the cell's value to the new value in the cell
       '        plus the old total stored in the cell comment.
                RT = .Value + Right(.Comment.Text, Len(.Comment.Text) - 4)
                .Value = RT
    
       '        Store the new total in the cell note.
                .Comment.Text Text:="RT= " & RT
            End If
          End With
    
    Exit Sub      ' Skip over the errorhandler routine.
    
    errorhandler: ' End the procedure if no comment in the cell.
          Exit Sub
    
    End Sub
    
       '--------------------------------------------------------------
       ' This macro sets up a cell to be a running total cell.
       Sub SetComment()
          With ActiveCell
       '     Set comment to indicate that a running total is present.
       '     If the ActiveCell is empty, multiplying by 1 will
       '     return a 0.
             .AddComment
             .Comment.Text Text:="RT= " & (ActiveCell * 1)
          End With
       End Sub
    
  5. När du har skrivit in makrona klickar du på Stäng och återgå till Microsoft Excelmenyn Arkiv.

  6. Spara och stäng arbetsboken och öppna den igen.

    Det Auto_Open makro som du skrev körs när du öppnar arbetsboken.

  7. Markera cell C3.

    Det här är cellen som kommer att innehålla en kommentar med den löpande summan.

  8. Följ de här anvisningarna för att köra SetComment-makrot:

    1. Peka på Makro på Verktyg-menyn och klicka sedan på Makron.
    2. Klicka på SetComment i dialogrutan Makro och klicka sedan på Kör.

Ett exempel på hur du använder löpande summa

Om du vill använda den löpande summan gör du så här:

  1. Skriv siffran 10 i cell C3.
  2. Markera cell C3 och lägg märke till att kommentaren visar "RT= 10" (utan citattecken).
  3. Skriv siffran 7 i cell C3.
  4. Markera cell C3 och lägg märke till att kommentaren visar "RT= 17" (utan citattecken).

Så här tar du bort löpande summa

Om du vill ta bort den löpande summan gör du så här:

  1. Markera cellen som innehåller den löpande summan som du vill ta bort.
  2. Högerklicka på cellen och klicka på Ta bort kommentar på snabbmenyn.