Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Spela in din första makro | Introduktion till VBA och Excels Objektmodell
Excel VBA för affärsautomatisering

Spela in din första makro

Svep för att visa menyn

Makroinspelaren är det snabbaste sättet att se riktig VBA-kod utan att själv skriva någon kod: du utför en åtgärd manuellt, Excel registrerar varje klick som en VBA-sats, och du kan spela upp det — eller läsa det för att lära dig syntaxen för de objekt du just använde.

Spela in en repetitiv uppgift

  1. På fliken Utvecklare, klicka på Spela in makro;
  2. Namnge det FormatEmployeeHeader (inga mellanslag är tillåtna i makronamn);
  3. Välj Denna arbetsbok under "Spara makro i."
  4. Klicka på OK — Excel spelar nu in;
  5. Markera rad 1 (rubrikraden), gör den fet och använd en ljusgrön fyllning;
  6. Klicka på Stoppa inspelning på fliken Utvecklare.
carousel-imgcarousel-imgcarousel-img

Köra makrot igen

Ångra din manuella formatering (Ctrl+Z) så att rubriken återgår till vanlig svart text. Klicka sedan på Makron på fliken Utvecklare, välj FormatEmployeeHeader och klicka på Kör. Excel återställer exakt samma formatering direkt — eftersom det nu återupprepar koden som skrevs medan du arbetade.

Förstå den genererade koden

Öppna VBE (Alt+F11) och titta i den nya modulen. Du kommer att se något liknande detta:

Två saker är värda att notera direkt. För det första motsvarar varje åtgärd du utförde en rad VBA — att markera ett område blev Range("A1:F1").Select, och att göra det fetstil blev Selection.Font.Bold = True.

För det andra, notera mönstret med Select följt av en åtgärd på Selection. Det är bekvämt för inspelningsverktyget, men det är inte så erfarna VBA-utvecklare skriver kod för hand.

Vad inspelningsverktyget inte kan göra

  • Det kan inte fatta beslut — inga If-satser, inga loopar, ingen villkorslogik;
  • Det hårdkodar exakta områden och värden, så det går sönder så fort din data ändrar form;
  • Det kan inte be användaren om inmatning eller validera något;
  • Det genererar ofta mer omfattande och långsammare kod än en handskriven motsvarighet;
  • Det kan inte kommunicera med andra applikationer som Outlook.

Tänk på inspelningsverktyget som en översättare, inte en automationsmotor: det är utmärkt för att lära sig namnen på objekt och egenskaper, och användbart för snabba engångsmakron för formatering, men verklig affärsautomation — den med logik, loopar och felhantering — måste skrivas för hand. Det är den färdigheten som hela denna kurs bygger mot.

Uppgift

Spela in, bryt ned och läs.

  1. Spela in ett andra makro kallat HighlightIT som markerar kolumnen Department och tillämpar fet och kursiv stil på någon cell — oroa dig inte för att göra det villkorligt än, spela bara in den manuella formateringen.
  2. Kör båda makrona efter varandra och bekräfta att formateringen tillämpas korrekt igen.
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 1. Kapitel 3

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

Avsnitt 1. Kapitel 3
some-alt