Video: Rasande tempo i kassan med osynlig streckkod 2024
Att vara en VBA-programmerare kan vara överväldigande ibland. Ett sätt att titta på VBA är att det är ett verktyg som låter dig efterlikna Excel-kommandon. Tänk på detta VBA-uttalande:
Område ("A1: A12"). Namn = "MonthNames"
Genomför detta VBA-uttalande har samma effekt som att välja Formler → Definierade namn → Definiera namn för att visa dialogrutan Nytt namn, skriv MonthNames i rutan Namn och A1: A12 i rutan Refers to, och klicka på OK.
När du utför VBA-deklarationen visas inte dialogrutan Nytt namn. Detta är nästan alltid vad du vill hända; du vill inte att dialogrutor blinkar över skärmen medan makroet körs.
I vissa fall kanske du vill att din kod ska visa en av Excels många inbyggda dialogrutor och låta användaren göra valen i dialogrutan. Du kan göra detta genom att använda VBA för att utföra ett Ribbon-kommando. Här är ett exempel som visar dialogrutan Nytt namn. Adressen i rutan Refers To representerar det intervall som valts när kommandot körs.
Application. Command. ExecuteMso "NameDefine"
Din VBA-kod kan inte få någon information från dialogrutan. Om du till exempel kör koden för att visa dialogrutan Nytt namn, kan din kod inte få namnet som anges av användaren eller det område som heter.
ExecuteMso är en metod för CommandBars-objektet och accepterar ett argument: en idMso-parameter som representerar en bandstyrning. Tyvärr är dessa parametrar inte listade i hjälpsystemet. Och eftersom bandet inte har funnits för evigt, är kod som använder ExecuteMso-metoden inte kompatibel med versioner före Excel 2007.
Här är ett annat exempel på hur du använder ExecuteMso-metoden. Detta uttalande, när det körs, visar fliken Teckensnitt i dialogrutan Formatceller:
Program. Command. ExecuteMso"FormatCellsFontDialog"
Om du försöker visa en inbyggd dialogruta i ett felaktigt sammanhang visar Excel ett felmeddelande. Det här är till exempel ett uttalande som visar dialogrutan Formatnummer:
Program. Command. ExecuteMso "NumberFormatsDialog"
Om du utför det här uttalandet när det inte är lämpligt (till exempel en form är vald) visar Excel ett felmeddelande eftersom den dialogrutan endast är lämplig för arbetsarkceller.
Excel har tusentals kommandon. Hur kan du hitta namnet på den du behöver? Ett sätt är att använda fliken Anpassa band i dialogrutan Excel-alternativ. Det snabba sättet att komma dit är att högerklicka på någon bandstyrning och välj Anpassa bandet från snabbmenyn.
Nästan alla kommandon som finns tillgängliga i Excel visas i den vänstra panelen. Hitta kommandot du behöver och sväng musen över det, och du ser sitt hemliga kommandonamn i verktygstipset (det är delen inom parentes).
Använd fliken Anpassa band för att identifiera ett kommandonamn.