Microsoft Excel inneholder en innebygd programmeringsspråk kalt Visual Basic , som lar deg lage skript som utfører oppgaver som ikke er innebygd i Microsoft Excel. Disse skriptene kalles makroer . En måte du kan skrive makroer er å ta dem ( Developer > Registrer makro ) , og en annen måte er å åpne Visual Basic integrert utviklingsmiljø og skrive manuset for hånd . Skriver manus denne måten kan man skreddersy skriptet til dine spesifikke behov. Men , du trenger en fungerende kunnskap om Visual Basic språket til å skrive manus , eller et eksisterende skript du kan gå inn i IDE . Validere e-postadresser
Følgende skript validerer e-postadresser som er lagret i det første regnearket i en Excel-arbeidsbok dokument. Skriv inn noen e-postadresser i cellene A1 til A5 på regnearket . Gjør bevisste feil i noen av adressene ved å la ut -tegnet ( "@" ) . Etter inn manuset i denne artikkelen , kan du kjøre script ( Alt- F8 , " Validate_Emails " ) for å se de uriktige adresser uthevet.
Type Script
å begynne skrive manuset når du har åpnet opp Excel , skriver Visual Basic IDE ( alt - F11 ) . (Du kan også kopiere og lime inn manuset i stedet for å skrive den linje for linje. ) I Prosjekt ruten til venstre , klikker du navnet på Excel-arbeidsboken , og deretter velge Sett Module . Dette gir deg en ny modul der du kan skrive kode .
I koden visning av modulen du nettopp opprettet , skriver disse funksjonene , er forsiktig med å matche tilfelle av hver bokstav .
Sub Validate_Emails ( ) Dim arrEmail Som VariantDim rc Som BooleanarrEmail = Range (" a1 : a5 ") . Verdi
'Sjekk hver celle e-postadresse, nå i en arrayFor i = 1 To UBound ( arrEmail ) rc = blnEmailIsOkay ( arrEmail (i, 1 ) ) Hvis (rc = False ) Then'Highlight cellen med en ugyldig e addressHilightCell ( i) End IfNextEnd Sub
Public Function blnEmailIsOkay ( CellContents som variant ) Som Boolean
< p > p = InStr ( 1 , CellContents , "@" )
p Hvis ( p = 0 ) ThenblnEmailIsOkay = FalseElseblnEmailIsOkay = TrueEnd Hvis
End Function
Public Sub HilightCell (i ) r = "a" & i & " : en" . & i
p Med Range ( r ) Interior.Pattern = xlSolid.PatternColorIndex = xlAutomatic.Color = 65535.TintAndShade = 0.PatternTintAndShade = 0End WithEnd Sub
-----------------------------------
Slik fungerer
" arrEmail = " statement i starten av Validate_Emails kopierer e-postadresser fra cellene A1 til a5 i regnearket en , til et internt array ( arrEmail ) .
for loop som følger gjentas gjennom denne matrisen , og ringer en annen funksjon, blnEmailsIsOkay , for å søke etter " @ "-tegnet nødvendig for e-postadresser. Hvis blnEmailsIsOkay ikke finner tegn ( returnerer false) , en annen funksjon, HilightCell , er kalt til å male den fornærmende celle gult. Den HilightCell funksjonen er et godt sted å begynne fiksing og triksing med og utforske kode , fordi du kan endre detaljer som farge og andre formateringsalternativer, og samtidig la den generelle funksjonaliteten i programmet intakt . For eksempel , prøv å endre høydepunkt farge fra gult til blått , eller mønsteret til noe annet enn " xlSolid . " Trykk F1 mens markøren er over " . Mønster " og " . Color " egenskaper for å få en idé om andre alternativer for disse eiendommene.