Innehållsförteckning:
- Deklarera alla variabler
- Förvirra inte lösenord med säkerhet
- Rengör din kod
- Lägg inte allt i ett förfarande
- Överväga annan programvara
- Anta inte att alla aktiverar makron
- Bli vana med att experimentera
- Antag inte att din kod kommer att fungera med andra Excel-versioner
- Håll dina användare i åtanke
- Glöm inte säkerhetskopieringar
Video: Do's & Don'ts of Excel Spreadsheet Design (with Examples) 2024
Här hittar du några råd du bör ta hänsyn till när du börjar utveckla dina egna Excel VBA-lösningar. Att följa dessa riktlinjer är inget paradis för att hålla dig ur (programmering) problem, men efter dem kan du undvika fallgropar som andra har snubblat över.
Deklarera alla variabler
Hur bekvämt det är: Börja bara skriva din VBA-kod utan att behöva gå igenom det tråkiga syftet att förklara varje variabel du vill använda. Även om Excel tillåter dig att använda odeklarerade variabler, gör du det bara att fråga om problem.
Det första budet om VBA-programmering bör vara detta:
Du ska deklarera varje variabel.
Om du saknar självdisciplin, lägg till ett "Option Explicit" -förklaring högst upp i dina moduler. På så sätt körs inte koden ens om den innehåller en eller flera oförklarliga variabler. Att inte deklarera alla variabler har bara en fördel: Du sparar några sekunder. Men med hjälp av odeklarerade variabler kommer så småningom att komma tillbaka för att hemsöka dig.
Förvirra inte lösenord med säkerhet
Bara lösenordsskydda VBA-projektet, och du är säker, eller hur? Fel.
Använda ett VBA-lösenord kan hålla de flesta lediga användare från att visa din kod. Men om någon verkligen vill kontrollera det, kommer han att ta reda på hur man kan slå lösenordet.
Bottom line? Om du absolut behöver positivt hålla din kod hemlig, är Excel inte det bästa valet för en utvecklingsplattform.
Rengör din kod
När din app arbetar till din tillfredsställelse ska du städa upp den. Kodhushållningsuppgifter inkluderar följande:
-
Se till att varje variabel är deklarerad.
-
Se till att alla rader är ordentligt indragna så att kodstrukturen är uppenbar.
-
Ta bort eventuella felsökningshjälpmedel, till exempel MsgBox-satser på Felsökning. Skriv ut uttalanden.
-
Byt namn på några dåligt namngivna variabler. Om du till exempel använder variabeln MyVariable, är det en ganska bra chans att du kan göra variabelnamnet mer beskrivande. Du kommer att tacka dig själv senare.
-
Dina moduler har förmodligen några "test" -procedurer som du skrev när du försökte hitta något. De har tjänat sitt syfte, så ta bort dem.
-
Lägg till kommentarer så att du förstår hur koden fungerar när du återvänder den sex månader från nu.
-
Se till att allt är stavat korrekt - speciellt text i UserForms och meddelandefält.
-
Kontrollera om det finns överflödig kod. Om du har två eller flera procedurer som har identiska block av kod, överväg att skapa ett nytt förfarande som andra procedurer kan ringa.
Lägg inte allt i ett förfarande
Vill du göra ett oförståeligt program? Ett effektivt sätt att uppnå det är att sätta all din kod inuti en fin stor procedur. Om du någonsin återkommer detta program igen för att göra ändringar, är du skyldig att göra misstag och presentera några fina buggar.
Ser du problemet? Lösningen är modulär kod. Dela ditt program i mindre bitar, med varje bit utformad för att utföra en specifik uppgift. När du hämtar den här vanan kommer du att upptäcka att det är enklare än någonsin att skriva bug-free-kod.
Överväga annan programvara
Excel är ett otroligt mångsidigt program, men det är inte lämpligt för allt. När du är redo att genomföra ett nytt projekt, ta lite tid att överväga alla dina alternativ. För att parafrasera ett gammalt ordspråk, "När allt du vet är Excel VBA, så ser det ut som ett VBA-makro. "
Anta inte att alla aktiverar makron
Som du vet kan Excel öppna en arbetsbok med dess makron inaktiverade. I själva verket är det nästan som om designersna av de senaste versionerna av Excel vill att användare ska inaktivera makron.
Det är inte en bra idé att aktivera makron när du öppnar en arbetsbok från en okänd källa. Så du behöver veta dina användare. I vissa företagsmiljöer är alla Microsoft-makroner avaktiverade och användaren har inget val i frågan.
En sak att tänka på är att lägga till en digital signatur i arbetsböckerna som du distribuerar till andra. På så sätt kan användaren försäkra sig om att arbetsböckerna faktiskt kommer från dig och att de inte har ändrats. Kontakta hjälpsystemet för mer information om digitala signaturer.
Bli vana med att experimentera
Att skapa enkla experiment är nästan alltid mycket effektivare än att införliva en ny idé i din befintliga kod utan att förstå vad de experimenten ger.
Antag inte att din kod kommer att fungera med andra Excel-versioner
För närvarande används minst fem versioner av Excel över hela världen. När du skapar en Excel-app, har du absolut ingen garanti för att den fungerar felfritt i äldre versioner eller i nyare versioner. I vissa fall kommer inkompatibiliteterna att vara uppenbara. Men du kommer också att upptäcka att saker som ska fungera med en tidigare version inte fungerar.
Excel innehåller en praktisk kompatibilitetskontroll (välj Arkiv → Info → Kontrollera efter problem → Kontrollera kompatibilitet), men det kontrollerar bara arbetsboken och ignorerar VBA-koden. Det enda sättet att vara säker på att din ansökan fungerar med andra versioner än den du skapade den med är att testa den i dessa versioner.
Håll dina användare i åtanke
Om du utvecklar appar för andra är ditt jobb svårare eftersom du inte kan göra samma typ av antaganden som du gör när du utvecklar dig själv.
Du kan till exempel vara mer laks med felhantering om du är den enda användaren. Om ett fel uppstår, har du en bra idé om var du ska se så att du kan fixa det. Om någon annan använder din app och samma fel uppstår, kommer han eller hon att vara otur.Och när du jobbar med din egen ansökan, kan du oftast gå utan instruktioner.
Du måste förstå kompetensnivån hos dem som kommer att använda dina arbetsböcker och försöka förutse problem som de kan ha. Försök att bilda dig själv som ny användare av din ansökan och identifiera alla områden som kan orsaka förvirring eller problem.
Glöm inte säkerhetskopieringar
Ingenting är mer avskräckande än en hårddiskkrasch utan säkerhetskopiering. Om du arbetar med ett viktigt projekt, fråga dig en enkel fråga: "Om datorn dör i kväll, vad ska jag ha förlorat? "Om ditt svar är mer än ett par timmars arbete måste du titta noggrant på din säkerhetskopiering av data. Du har ett dataregistreringsförfarande, eller hur?