Denna handledning lär dig hur du ringer en funktion från en delprocedur i VBA.
När du skapar en funktion i VBA kan du antingen använda funktionen som en UDF (användardefinierad funktion) i din Excel -arbetsbok, eller så kan du ringa den från en delprocedur.
Anropa en funktion från ett delprocedur
När du har skapat en funktion kan du ringa den från någon annanstans i koden genom att använda ett delprocedur för att ringa funktionen.
Tänk på funktionen nedan:
123 | Funktion GetValue () som heltalGetValue = 50Avsluta funktion |
Eftersom funktioner returnerar ett värde, för att kunna kalla funktionen, måste vi överföra värdet till något. I det här fallet skickar vi värdet till en variabel:
123456789 | Sub TestValues ()Dim intVal som heltal'kör GetValue -funktionenintVal = GetValue ()'och visa värdetMsgBox intValAvsluta Sub |
Anropa en funktion med parametrar
Om funktionen har parametrar måste du skicka dessa parametrar från delproceduren till funktionen för att få tillbaka rätt värde.
123 | Funktion GetValue (intA som heltal) Som heltalGetValue = intA * 5Avsluta funktion |
För att anropa denna funktion kan vi köra följande delprocedur.
123 | Sub TestValues ()MsgBox GetValue (10)Avsluta Sub |
Detta delprocedur skickar värdet 10 till funktionen, vilket i sin tur multiplicerar det värdet med 5 och returnerar värdet till 50 till delproceduren.