Hur VBA (Visual Basic for Applications) gjorde det ”omöjiga” möjligt

Publicerad söndag, 01 mars 2020 Skriven av Janne

Reviderad 2020-04-02

En rapport från ett intressant och mycket givande möte med en helt ny bekantskap som garanterat får en fortsättning om än i andra miljöer.

Jag vill visa på möjligheten att med hjälp av VBA anpassa, i detta fall Excel, till ett verktyg för en effektiv administration. Nästa steg blir att undersöka om Outlook också kan stärkas upp.

Som exempel tar jag då min situation på MSC (Microsoft Community) som från början inte var värst omfattande. 2015 anmälde jag min första fråga på forumet i Sverige . Det har sedan följts av, inte så många egna frågor, men desto fler inlägg på andras trådar och rena besök på trådar bara för att lära mig mer om Microsoft och om Windows på olika plattformar samt allehanda tekniker.

Numera botaniserar jag även på MSC-UK. Kan med varm hand rekommendera studiebesök i dessa forum.

Bakgrund/ förutsättningar

För att kunna bemöta nya frågor med tidigare svar, och hålla koll på var jag varit började jag då, 2015, fylla i ett Word dokument för att återanvända vad jag tidigare läst och ibland också besvarat. Med ökande volymer, i dagsläget ca 2000, kände jag för att effektivisera mitt ”arbete” och samtidigt lära mig VBA.

Idag har jag ett verktyg

  • Som snabbt, några sekunder, hämtar information från en tråd oavsett om jag själv deltager eller inte. Jag klipper ut URL länken, klistrar in den i ett formulär som laddar några celler i en Excel arbetsbok samt skapar en textfil,  vilket tar 15 - 30 sekunder sammanlagt.
  • Som lagrar information i en Excel arbetsbok där den är sökbar via ordinarie funktioner.
  • Som lagrar större mängder av den hämtade informationen i enskilda text filer. Sökbara alla på en gång. Sekundsvar!
  • Som ger mig möjlighet att lämna svar på trådar baserat på tidigare ärenden.

Till vilken nytta frågar man sig? Drivkraften har varit att lära mig alltmer om VBA, genom att prova så många funktioner i VBA som möjligt. Har nog spenderat 3–4 veckor och haft roligt hela tiden.

Om någon är intresserad kan jag bidra med mer information. Lämna en kommentar/starta en diskussion här på bloggen.

 

Tips till den som vill komma igång att jobba med VBA

 

Skaffa kunskap via nätet, det finns massor. Att hitta en sida som erbjuder exempelkod kan vara en god idé.

Börja utveckla i en produkt t.ex. Excel, även om VBA är tillgänglig för Word, Powerpoint och Outlook.

  • Öppna en ny arbetsbok
  • Välj fliken Utvecklare och sedan Visual Basic så skapas automatiskt ett VBA projekt att jobba med.
  • Spara arbetsboken som .xlsm och du är igång

 

Några länkar:

”VBA bibeln” är nog inte den man börjar med men bra att ha som uppslagsbok och referens: https://docs.microsoft.com/sv-se/office/vba/api/overview/

Gott om exempel: https://www.automateexcel.com/vba/yes-no-message-box/

Mer exempel https://www.excel-easy.com/vba/string-manipulation.html

Bra början: https://www.excelcampus.com/vba/

Varför inte: https://www.excelanytime.com/excel/

Viktig: https://itstillworks.com/add-scripting-runtime-type-library-7495029.html

Här hittar du mina kodexempel.

 

Svårigheter på vägen:

I total avsaknad av VBA kompetens från början har det blivit mycket letande på Internet.

Att analysera html koden för att kunna använda lämplig information har inte varit att leka med.

Beskrivning av lösningen och dess funktioner

Kod finns samlad i ett VBA projekt.

Anrop till koden sker med musklick från enskilda blad i arbetsboken. Ingen kod är mer än ett musklick bort.

Här finns några skärmklipp från applikationen som ger en samlad beskrivning.