Indholdsfortegnelse
Vi bruger ofte MsgBox på VBA for at vise meddelelsen efter at have kørt koderne. Nogle gange kan en enkelt linje ikke vise output korrekt. Så er vi nødt til at tilføje nye linjer . Så fra denne artikel vil du lære 6 nyttige makroer til at tilføje en ny linje i MsgBox ved hjælp af Excel VBA.
Download arbejdsbog til øvelser
Du kan downloade den gratis Excel-skabelon her og øve dig på egen hånd.
Opret ny linje i MsgBox.xlsm6 eksempler på at oprette en ny linje i msgBox ved hjælp af Excel VBA
1. Brug vbNewLine til at tilføje en ny linje i MsgBox ved hjælp af Excel VBA
Her bruger vi vbNewLine på VBA-makro for at tilføje en linje i MsgBox. Jeg vil vise dig " Hej! " i den første linje og " Velkommen til ExcelWIKI" i den anden linje.
Trin:
- Tryk på Alt + F11 for at åbne den VBA-vindue .
- Derefter klik som følger for at indsætte et modul: Indsæt ➤ Modul .
- Senere skal du skrive følgende koder i den
Sub NewLine_vbNewLine() MsgBox "Hello!" & vbNewLine & "Velkommen til ExcelWIKI" End Sub
- Derefter gå tilbage til din ark og klik som følger for at åbne Makroer dialogboksen: Udvikler ➤ Makroer .
- Vælg Makronavn som angivet i koder .
- Til sidst skal du blot trykke på Kør .
Se nu, vbNewLine viser resultatet i to linjer .
Læs mere: VBA til at generere flere linjer i e-mail-kroppen i Excel (2 metoder)
2. Brug vbCrLf til at oprette en ny linje i MsgBox ved hjælp af VBA i Excel
Nu bruger vi en anden konstant på VBA - vbCrLf for at oprette en ny linje i MsgBox Den vil også tilføje en ny linje mellem de to på hinanden følgende linjer.
Trin:
- Først skal du følge den de to første trin fra den første metode for at indsætte et modul i VBA
- Derefter skriv følgende koder i-
Sub NewLine_vbCrLf() MsgBox "Hello!" & vbCrLf & vbCrLf & vbCrLf & "Velkommen til ExcelWIKI" End Sub
- Følg derefter fjerde trin fra den første metode for at åbne den Dialogboks for makroer .
- Vælg den Makronavn og tryk på Kør .
Den konstante vbCrLf har tilføjet en ny linje med en mellemrumslinje også.
Læs mere: Sådan tilføjes en linje i Excel-cellen (5 nemme metoder)
3. Indsæt vbLf for at tilføje en ny linje i MsgBox ved hjælp af Excel VBA
Lad os bruge en anden konstant- vbLf for at tilføje en ny linje i MsgBox i Excel VBA.
Trin:
- Følg den de to første trin fra den første metode for at indsætte et modul i VBA
- Senere, skriv følgende koder i-
Sub NewLine_vbLf() MsgBox "Hello!" & vbLf & "Velkommen til ExcelWIKI" End Sub
- Følg derefter fjerde trin fra den første metode for at åbne den Dialogboks for makroer .
- Senere skal du vælge den Makronavn som nævnt i koderne, og tryk på Kør .
Og kort efter får du det ønskede resultat.
Læs mere: Sådan tilføjes en ny linje med CONCATENATE-formlen i Excel (5 måder)
4. Anvend Chr til at oprette en ny linje i MsgBox ved hjælp af VBA i Excel
Her bruger vi to konstanter i VBA- Chr(13) & Chr(10) for at tilføje linjer.
Trin:
- Start med at følge de to første trin fra den første metode for at indsætte et modul i VBA
- Derefter skriv følgende koder i-
Sub NewLine_Chr() MsgBox "Hello!" & Chr(13) & Chr(13) & Chr(10) & "Velkommen til ExcelWIKI" End Sub
- Følg derefter fjerde trin fra den første metode for at åbne den Dialogboks for makroer .
- Vælg derefter den tildelte Makronavn og tryk på Kør .
Se, at vi har fået det samme resultat.
5. Tilføj ny linje i makroen i Excel VBA
I de tidligere metoder brød vi ikke linjen i koden. Her bryder vi linjen og tilføjer linjer i koderne.
Trin:
- Først skal du følge den de to første trin fra den første metode for at indsætte et modul i VBA
- Næste, skriv følgende koder i-
Sub NewLine_within_Macro() MsgBox "Hello!" & vbCrLf & vbCrLf & _ "Velkommen til ExcelWIKI" End Sub
- Senere skal du følge den fjerde trin fra den første metode for at åbne den Dialogboks for makroer .
- Derefter skal du blot vælge den Makronavn og tryk på Kør .
Se nu, at makro har tilføjet en ny linje at holde en mellemrumslinje mellem linjerne.
Læs mere: Sådan laver du et linjeskift i Excel (4 måder)
6. Embed VBA til at tilføje nye linjer i MsgBox ved hjælp af knap
I vores allersidste metode udfører vi opgaven på en lidt anderledes måde. Vi sætter en knap for at tilføje linjer i MsgBox .
6.1 Knap for enkelt linje
Først laver vi en knap til at tilføje en enkelt linje. Til det formål har jeg lavet et datasæt, der repræsenterer tre celler til at give input Efternavn , Adresse , og Telefon nummer Når vi klikker på knap , vil den kontrollere cellerne og hvis får en tom celle så vil vise meddelelsen for den pågældende celle.
- Klik på som følger: Udvikler ➤ Indsæt og derefter Vælg rektangulær kasse fra den Afsnittet Form Controls .
- Kort tid efter får du en plus-tegn i din markør, venstre-klik på din mus og træk på den ark til at indstille den knapstørrelse .
- Derefter højreklik på din mus på den knap og vælg Rediger tekst fra den kontekstmenu til at indstille den knapnavn .
- Type Navn og klik et vilkårligt sted på arket.
- Igen højreklik på din mus på den knap og vælg Tildel makro fra den kontekstmenu til at indstille en Makro .
- I dette øjeblik skal du give et Makronavn og tryk på Ny .
- Derefter type følgende koder -
Private Sub SingleLine_Button() Dim WS As Worksheet Set WS = Sheets("Single Line") If WS.Range("C4").Value = "" Then MsgBox "Please Insert Last Name!" End If If WS.Range("C5").Value = "" Then MsgBox "Please Insert Address!" End If If WS.Range("C6").Value = "" Then MsgBox "Please Insert Phone Number!" End If End Sub
Opdeling af kode
- Først oprettede jeg en Underprocedure SingleLine_Button .
- Derefter erklærede du en variabel WS som Arbejdsark .
- Derefter blev der brugt tre IF-meddelelser for at kontrollere cellerne, hvis cellen er fyldt med værdi så vil det ignorere det og hvis får en tom celle vil derefter vise den tilsvarende meddelelse via MsgBox .
- Senere, bare gå tilbage til din ark og klik knap .
Som den Efternavn feltet er tomt, og det er derfor, at den viser meddelelsen.
- Tryk på OK og derefter kontrollerer den det andet felt.
Den anden feltet er tomt også så det tilføjede en ny linje for at underrette den .
Her fyldte jeg den første felt og klikkede på knappen, og se, at den sprang over dette felt og hoppede til andet felt for at vise meddelelsen.
6.2 Knap for flere linjer
Ved at tildele denne knap kan vi tilføje flere linjer ad gangen i meddelelsesboksen.
- Først, Følg de første 6 trin fra det foregående afsnit. for at tilføje en knap og tildele en makro .
- Derefter type følgende koder i makro-
Sub Multiple_Line_Button() Dim WS As Worksheet Set WS = Sheets("Multiple Line") Dim Last_Name, Address, Phone, Error_msg As String Last_Name = Len(WS.Range("C4"))) Address = Len(WS.Range("C5"))) Phone = Len(WS.Range("C6"))) If Last_Name = 0 Then Error_msg = "Please Insert Last Name!" End If Address = 0 Then Error_msg = Error_msg & vbNewLine & "Please Insert Address!" End If If Phone = 0Then Error_msg = Error_msg & vbNewLine & "Indsæt venligst telefonnummer!" End If If Error_msg "" Then MsgBox Error_msg, vbOKOnly, Title:="Vigtig advarsel!" Exit Sub End If End Sub End Sub
Opdeling af kode
- Her har jeg oprettet en Underprocedure Multiple_Line_Button .
- Derefter erklærede du nogle variabler WS Som Arbejdsark og Efternavn , Adresse , Telefon , Error_msg Som
- Senere, brugt Len og Område for at indstille felterne.
- Endelig anvendes Hvis-erklæringer for at kontrollere, om felterne er tomme eller ej . Hvis den er udfyldt, vil den springe over, og hvis ikke, vil den vise meddelelser via MsgBox .
- Endelig skal du blot returnere til arket og klik knap .
Og se, at den viser tre linjer for den tre områder som de alle er tom .
Jeg fyldte den første felt og nu kan du se, at den kun viser meddelelser for den de 2 næste felter .
Læs mere: Sådan sættes flere linjer i Excel-cellen (2 nemme måder)
Konklusion
Jeg håber, at de procedurer, der er beskrevet ovenfor, vil være gode nok til at oprette en ny linje i MsgBox ved hjælp af Excel VBA. Du er velkommen til at stille spørgsmål i kommentarfeltet og give mig feedback.