140 likes | 415 Views
VBA voor Excel door Lenny Hoeks. Onderwerpen. De onderwerpen zijn grofweg onder te verdelen in 4 catergoriën: Filtermethodes Functies Ranges Werkbladfuncties. Filtermethodes. De filtermethodes zijn opgebouwd met alleen VBA code en met gebruik van de filters in Excel.
E N D
VBA voor Exceldoor Lenny Hoeks Nationale Officedag
Onderwerpen • De onderwerpen zijn grofweg onder te verdelen in 4 catergoriën: • Filtermethodes • Functies • Ranges • Werkbladfuncties Nationale Officedag
Filtermethodes • De filtermethodes zijn opgebouwd met alleen VBA code en met gebruik van de filters in Excel. • Filteren adressenlijst VBA code • Filteren adressenlijst draaitabel • Unieke gegevens uit lijst halen • Welke autofilters zijn in gebruik • Verberg pijlen bij autofilters • KopieerFilterGegevens Nationale Officedag
Functies • Functies kunnen op verschillende manier worden gebruikt, statisch, zoals in Excel gebruikelijk of met VBA code geprogrammeerd. • FunctieInWerkbladZetten • Function ConditioneleSom • Function Oppervlakte • Function LaatsteVanKolom Nationale Officedag
Ranges • Ranges zijn vanzelfsprekend zeer belangrijk in Excel projecten, ze kunnen op verschillende manieren wordengebruikt en gedeclareerd. • ZoekenNaarFormules • LijstVanFormules • AlleLegeRegelsVerwijderen • OpmaakVoorAlleCellenInSheet • NaamToevoegen & NaamBereik • NegatieveGetallenVet Nationale Officedag
Werkbladfuncties • Werkbook en werkbladfuncties zijn onontbeerlijk voor VBA projecten en geven inzicht in de functionaliteit van Excel. • Auto_open & Workbook_Open • Worksheet_Change • BladVerwijderen • IncoonCursorWait • WerkbladVerbergen Nationale Officedag
Werkwijze • Tijdens de nationale office dag kunt u aangeven welk van de bovengenoemde onderwerpen u behandeld wilt zien. • Op de volgende dia’s vind u voorbeeldcode. Nationale Officedag
Autofilter tool • Sub VerbergPijlenBijAutofilter(intKolomNummer As Integer) • 'verbergt alle pijlen, behalve die van het intKolomNummer • Dim rngCel As Range • Dim intAantalKolommen As Integer • intAantalKolommen = Cells(1, 1).End(xlToRight).Column • Application.ScreenUpdating = False • For Each rngCel In Range(Cells(1, 1), Cells(1, i)) • If rngCel.Column <> intKolomNummer Then • rngCel.Autofilter Field:=rngCel.Column, Visibledropdown:=False • End If • Next • Application.ScreenUpdating = True • End Sub Nationale Officedag
Ga naar range • Sub GaNaarRange(strTekstInputbox As String) • Dim varRange As Variant • On Error Resume Next • Begin: • Set varRange = _ • Application.InputBox(strTekstInputbox, Title:=TITEL, Default:="A1", Type:=8) • If IsObject(varRange) = False Then • MsgBox "Er is geen goede range bepaald!" & vbNewLine & _ • "Probeer het opnieuw!", vbCritical, TITEL • GoTo Begin • End If • Application.Goto varRange • End Sub Nationale Officedag
Conditionele Som • Function ConditioneleSom(rngBereik As Range, _lngMinWaarde As Long, _ • lngMaxWaarde As Long) As Double • 'Deze functie telt de waarden op die tussen lngMinWaarde en lngMaxWaarde liggen • Dim rngCell As Range • For Each rngCell In rngBereik • If Not IsNumeric(rngCell.Value) Then GoTo Volgende • If rngCell >= lngMinWaarde And rngCell <= lngMaxWaarde Then _ • ConditioneleSom = ConditioneleSom + rngCell.Value • Volgende: • Next • End Function Nationale Officedag
Rangenamen maken • Private Sub NaamBereik() • Range("A1").Select • Do • Range(Selection, Selection.End(xlDown)).Select • Selection.CreateNames Top:=True • ActiveCell.Offset(0, 1).Select • Loop While Len(ActiveCell.Value) > 0 • End Sub Nationale Officedag
Blad verwijderen • Private Sub BladVerwijderen() • Dim intI As Integer • ActiveWorkbook.Sheets(1).Name = “Presentatie" • Application.DisplayAlerts = False • For intI = 2 To ActiveWorkbook.Sheets.Count • ActiveWorkbook.Sheets(2).Delete • Next intI • Application.DisplayAlerts = True • ActiveSheet.Tab.ColorIndex = 4 • End Sub Nationale Officedag
De Rooie Zebra • Red Zebra denkt met u mee als het gaat over het vereenvoudigen en stroomlijnen van uw administratieve handelingen. • Red Zebra realiseert dit middels de MS Office omgeving. Dat varieert van het professioneel opmaken van Word documenten en PowerPoint presentaties, tot het maken van sjablonen en huisstijl systemen in Word, bedrijfsspecifieke tools in Excel, documentbeheersing middels VBA. • Het maken van databases en de koppeling hier naartoe kan ook gerealiseerd worden. • Tevens verzorgt Red Zebra onderwijs in bovengenoemde disciplines. Nationale Officedag