Nwlapcug.com


Macro di Visual Basic di Microsoft Excel ha resa facile

Microsoft Excel include un built-in linguaggio di programmazione chiamato Visual Basic, che consente di creare script che eseguono attività che non sono incorporate in Microsoft Excel. Questi script vengono chiamati macro.

È possibile scrivere macro è possibile registrarli (Sviluppatore > Registra Macro), e un altro modo è quello di aprire l'ambiente di sviluppo integrato di Visual Basic e scrivere lo script a mano. Scrittura di script in questo modo consente di adattare lo script alle vostre specifiche esigenze. Ma, si sia esigenza di una conoscenza del linguaggio di Visual Basic per scrivere script, o uno script esistente, che è possibile immettere nell'IDE.

Convalida degli indirizzi E-mail

Il seguente script di convalida indirizzi e-mail memorizzati nel primo foglio di un documento di cartella di lavoro di Excel. Inserisci alcuni indirizzi email in celle a1 a a5 del foglio di lavoro. Commettere errori intenzionali in alcuni degli indirizzi lasciando fuori il carattere e commerciale ("@"). Dopo aver inserito lo script in questo articolo, eseguire lo script (alt-F8, "Validate_Emails") per gli indirizzi non corretti sono evidenziati.

Digitare lo Script

Per iniziare a digitare lo script una volta che hai aperto Excel, inserire l'IDE di Visual Basic (alt-F11). (Si può anche copiare e incollare lo script invece di digitarlo riga per riga.) Nel riquadro progetto a sinistra, fare clic sul nome della cartella di lavoro di Excel, quindi selezionare Inserisci modulo. Questo ti dà un nuovo modulo in cui immettere il codice.

Nella visualizzazione codice del modulo che appena creato, digitare queste funzioni, facendo attenzione a maiuscole/minuscole di ogni lettera.

Sub Validate_Emails()

Dim arrEmail As Variant
Dim rc As Boolean
arrEmail = Range("a1:a5").Value

'Check each cell's email address, now in an array
For i = 1 To UBound(arrEmail)
rc = blnEmailIsOkay(arrEmail(i, 1))
If (rc = False) Then
'Highlight the cell with an invalid email address
HilightCell (i)
End If
Next

End Sub

BlnEmailIsOkay funzione pubblica (CellContents As Variant) As Boolean

p = InStr (1, CellContents, "@")

Se (p = 0) quindi

blnEmailIsOkay = False

Altro

blnEmailIsOkay = True

End If

End Function

Public Sub HilightCell(i)
r = "a" & i & ": un" & io

Con Range(r). Interni

.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 65535
.TintAndShade = 0
.PatternTintAndShade = 0

Terminare con
End Sub


Come funziona

Il "arrEmail =" istruzione all'inizio di Validate_Emails copia gli indirizzi email da celle a1 e a5 nel foglio di lavoro 1, in una matrice interna (arrEmail).

Il ciclo For che segue consente di scorrere tale matrice e chiama un'altra funzione, blnEmailsIsOkay, per cercare la "@" caratteri necessari per gli indirizzi email. Se blnEmailsIsOkay non trovare la e commerciale (restituisce false), un'altra funzione, HilightCell, viene chiamata per disegnare la cella offendente giallo. La funzione HilightCell è un buon posto per iniziare ad armeggiare con ed esplorazione del codice, perché è possibile modificare dettagli come il colore e altre opzioni di formattazione, lasciando intatta la funzionalità complessiva del programma. Ad esempio, provare a cambiare il colore di evidenziazione dal giallo al blu, o il modello a qualcosa oltre a "xlSolid." Premere F1 mentre il cursore è sopra la ". Modello "e". Proprietà di colore"per avere un'idea di altre opzioni per queste proprietà.