Visual Basic for Applications ( VBA ) er et programmeringsspråk utviklet for Microsoft Office- programmer, for eksempel PowerPoint , Word og Excel. Den lar deg lage egne verktøy , knapper og menyer som du kan bruke til å tilpasse Office-programmer . For eksempel, det er ikke et verktøy i Excel som lar deg sammenligne kolonner og markere forskjeller . Men med litt VBA-kode , kan du opprette et nyttig verktøy for nettopp det formålet. Du trenger
Excel 2007 eller Excel 2010
Vis flere instruksjoner
en
Klikk på " Developer "-fanen i Excel , og klikk deretter på " Visual Basic. "
2
Klikk på " Sett inn". Klikk på " Module " for å åpne en ny modul vindu
3
Klipp ut og lim inn følgende kode inn i vinduet : .
Gå CompareColumns ()
Dim COLUMN1 Som Range
Dim COLUMN2 Som Range
' Be bruker for første kolonne for å sammenligne ...
' ---------- ------------------------------------------
Sett COLUMN1 = Application.InputBox ( " Velg første kolonnen til sammenligning " , Type : = 8 )
'Check at området de har gitt består av bare en kolonne ...
p Hvis Column1.Columns . Count > 1 Så
gjøre før Column1.Columns.Count = 1
MsgBox " Du kan bare velge en kolonne "
Set COLUMN1 = Application.InputBox ( " Velg Første kolonne til sammenligning " , Type : = 8 )
Loop
End If
' Be bruker for den andre kolonnen utvalg å sammenligne ...
< p > ' ----------------------------------------------- -----
Sett COLUMN2 = Application.InputBox ( "Select andre kolonnen til sammenligning " , Type : = 8 )
'Check at området de har gitt består av kun en kolonne ...
p Hvis Column2.Columns.Count > 1 Så
inntil Column2.Columns.Count = 1
MsgBox " Du kan bare velge en kolonne "
Set COLUMN2 = Application.InputBox ( "Select andre kolonnen til sammenligning " , Type : = 8 )
Loop
End If
'Check både kolonne områdene er av samme størrelse ...
' ----------------------------------- ----------
p Hvis Column2.Rows.Count < > Column1.Rows.Count Deretter
inntil Column2.Rows.Count = Column1.Rows . telle
MsgBox " den andre kolonnen må være av samme størrelse som den første "
Set COLUMN2 = Application.InputBox ( "Select andre kolonnen til sammenligning " , Type : = 8 )
Loop
End If
' Hvis hele kolonner er valgt ( f.eks $ AA) , begrense området størrelser til Home
' UsedRange av det aktive arket . Dette stopper rutine å sjekke hele Column1.Rows.Count = 65536 Da
Set COLUMN1 = Range ( Column1.Cells ( 1 ) , Column1.Cells ( ActiveSheet.UsedRange.Rows.Count ) )
Set COLUMN2 = Range ( Column2.Cells ( 1 ) , Column2.Cells ( ActiveSheet.UsedRange.Rows.Count ) )
End If
"Utfør sammenligning og sett celler som er de samme til gul
' ---------------------------------------------- ------------------
Dim intCell Som Long
For intCell = 1 To Column1.Rows.Count
Hvis Column1.Cells ( intCell ) = Column2.Cells ( intCell ) Da
Column1.Cells ( intCell ) . Interior.Color = vbYellow
Column2.Cells ( intCell ) . Interior.Color = vbYellow
End If
Neste
End Sub
4
Trykk " F5 " for å kjøre rutinen og sammenligne kolonnene .