Sessie E5 Floris M. Kleijne

Slides:



Advertisements
Verwante presentaties
Het maken van presentaties voor op de computer.
Advertisements

Gebruikersprocessen Marc Jeurissen.
De Altijd meteen aan de slag
Word 2003 Tips en trucs Door Johan Lammers.
KINN 2010 •OOP •O Object •O Georiënteerd •P Programmeren.
LRP FONDSEN /ABONNEMENTEN/REKENINGEN release 2.1 Koos Willemse.
Document Management Silicon.
E1: Migreren naar MS Office 2007 Jeff Blox. Introductie •Trainer / Consultant CT&C Services •
Training voor beheerders
Paginanaam aanpassen Activeren of deactiveren vd pagina Verwijderen vd pagina NOOIT OP KLIKKEN Geen functie.
Wil Kersten & Gerben van Engelen
E3: Office 2007 What’s in it for you…… Jeff Blox.
Klik op “Tijdelijke werkloosheid invoeren”. Vul hier uw gebruikersnaam en wachtwoord in of gebruik uw elektronische identiteitskaart.
PreSoft [dashboard]. Om een goed beeld te krijgen van de organisatie performance kiezen steeds meer managers voor een overzichtelijk management dashboard.
Les 1 Objecten, Eigenschappen en Gebeurtenissen
Base: bewerkingen 2 soorten - Oplopend- Aflopend.
Objecten Hoofdstuk 6 Hoofdstuk 6 Hoofdstuk 6 1.
Inleiding Programmeren met Visual Basic Karl Moens.
Klassen en objecten.
& mailings in Adlib Een overzicht van de mogelijkheden.
 Een standalone server is een server die zelf geen domeincontroller is en geen lid is van een domein.  Indien een server is opgenomen in een werkgroep,
Hoofdstuk 6: Controle structuren
Jo David. programma’s Microsoft: Outlook Netscape: Messenger andere.
Inleidend probleem Data structuur (hiërarchie van classes)
Visual Basic.
Consoletoepassing Variabelen Klassen
Hogeschool HZ Zeeland 19 augustus 2003augustus 2003 Data Structuren & Algoritmen Week 3.
Nationale Officedag6 maart 2008 VBA voor Excel door Lenny Hoeks.
Tips, Trucs en Vragen Excel
OOS Object geOrienteerd Software-ontwerp - 2
Windows Applicaties Bouwen met Visual Studio.NET Sijmen Koffeman Development Consultant Microsoft.
KINN 2010 OOP O Object O Georiënteerd P Programmeren.
Boomerang.
Order IT v1.03 (01/03/2005) Order IT V Order IT v1.03 (01/03/2005) Opstarten De client applet wordt opgestart vanuit een html pagina in een browser.
Visual Basic.NET voor studenten De VB- ontwikkelomgeving Hoofdstuk 2.
Les 6 Menu Programmeren met Visual Basic Karl Moens.
E.care ED AssessmentTool
Meervoudige selectie van deuren
Werken in K.U.Loket Syllabi. 1 ZoekmogelijkhedenVolledige lijst opvragen is ook mogelijk, maar kan lang duren Start in K.U.Loket de toepassing “mijn syllabi”
Handboek verzenden van Nieuwsbrief Caribbean.nl 12 september 2012 Ga naar CRM Personen Kies Open zoekvraag.
Handleiding ClassDojo
Klikdemo: CRM maken en wijzigen van afspraken in de agenda Versie: Academie Werkbedrijf Doel klikdemo In deze klikdemo leer je hoe je afspraken.
Les 7 Multiple Document Interface Programmeren met Visual Basic Karl Moens.
Interfaces Hoofdstuk 23 Hoofdstuk 23.
Les 3 sjablonen (templates), briefpapier maken
Les 3 Basisbouwstenen (deel 2) Programmeren met Visual Basic Karl Moens.
Hoofdstuk 10.3 Tekst-editor: MDI-interface Dialogen Files lezen Abstracte klassen.
Spreadsheets. Testen. Met spreadsheets.. |  Spreadsheet, het meest gebruikte (test) tool in de wereld …  Aan de slag: Spreadsheet PRA  Risico’s en.
Prototyping Week 7 // Tweenlite & API. TweenMax Snel mooie en effectieve animatie.
Java Objectgeoriënteerd Programmeren in Java met BlueJ Hoofdstuk 8: Gebruikersinterface © 2014, Gertjan Laan, versie 2.
Glenn Vanthournouthttp:// VV-Solliciteren - Wat / Waarom? - Algemene werking - Voordelen - Mogelijkheden sollicitanten - Mogelijkheden.
Delicious Social Bookmarking Katarina Bencova September 2008.
Inloggen >> Gegevensaanlevering en controle in Peridos In Release 3.3 van Peridos is er een nieuwe module gebouwd voor het aanleveren en bekijken van gegevens.
Werken met JOIN UT Tom Buys Maart 2016.
2 Online registratietool Handleiding 3 Inhoudstafel Als individu aansluiten bij een groep p 4p 4 Een nieuwe groep aanmaken en beheren p 13p 13 Personen.
Office 2010 Word 2010 Algemeen. Het lint: tabbladen, groepen en opdrachten 1. Tabbladen. Langs de bovenkant bevinden zich acht basistabbladen. Elk tabblad.
SharePoint Alles over versiebeheer In de Private en Public cloud.
Windows applicatieontwikkeling
Korte Handleiding Slim
Gevorderde EV3 PROGRAMMEER LES
SNEL VAN START MET DE MJO-applicatie VAN GWWkosten.nl
SharePoint Versiebeheer
OneNote gebruiken als digitaal notitieboekje
SQL Les February 2019.
Sessie ROOD: “Investeringsbegroting”
Software Development fundamentals
Flow Approvals op verschillende manieren
Software Development fundamentals
Installeren van het Office pakket vanuit Office 365 in Google Chrome
Transcript van de presentatie:

Sessie E5 Floris M. Kleijne VBA Office Sessie E5 Floris M. Kleijne

Case: Telemarketing-actie Eén maand, 1.500 telefoontjes Werkdagen en dagelijkse targets in Excel Na elke werkdag: Resultaat bijhouden in Excel Dagrapportage naar projectmanager (Gewijzigde) Targets naar Outlook schrijven

Case: Telemarketing-actie

Onderwerpen sessie E5 Excel: Gegevenslijst doorlopen en gebruiken Word: Rapportage maken vanuit Excel Outlook: Afspraken in Agenda maken en bijhouden Office: Automatisch werkbalk maken VBA: Class module ontwerpen en gebruiken Bladwijzers behouden bij het invullen Document automatisch e-mailen Vragen van u…?

Vragen van u?

Bedankt voor uw aandacht! Floris Kleijne www.i-teach.nl www.nationaleofficedag.nl/info_e5.htm

Lijst doorlopen en gebruiken

Lijst doorlopen en gebruiken Begin bij de eerste cel Handel die regel helemaal af Ga naar de volgende cel Herhaal tot lege cel

Lijst doorlopen en gebruiken Set Cel = Range("A2") Datum = Cel.Value Tijd = Cel.Offset(0,2).Value Call Verwerk(Datum,Tijd) Set Cel = Cel.Offset(1,0) Do Loop Until Cel.Formula = ""

Rapportage maken

Rapportage maken Voorbereiding: rapportagesjabloon Word opstarten Nieuwe rapportage maken Gegevens in rapportage invullen Rapportage opslaan

Rapportage maken Rapportagesjabloon Tekst en layout van tevoren vastgelegd Opslaan als *.dot Bij voorkeur in één v/d Sjabloon-mappen Lokaties in sjabloon voor gegevens Excel Markeren met Bladwijzers Formuliervelden kan ook

Rapportage maken Word opstarten Zichtbaar of niet? Word al opgestart  GetObject Word nog niet opgestart  New (runtime error op GetObject!) Geldt niet voor Outlook, PowerPoint Zichtbaar of niet? Zien wat er gebeurt  .Visible = True Performance  .Visible = False Aparte procedure maken!

Rapportage maken Nieuwe rapportage maken Gegevens invullen Set doc = wrd.Documents.Add("<sjabloon>") Indien in Sjabloon-map  pad niet nodig! Gegevens invullen Variabelen invullen in Bladwijzers doc.Bookmarks("Tijd").Range.Text = Tijd Bladwijzer gaat verloren!

Rapportage maken Document opslaan Call doc.SaveAs("Naam.doc") Wordt zonder waarschuwing overschreven!

Targets naar Outlook schrijven

Targets naar Outlook schrijven Outlook starten Gegevens naar Outlook Datum, begintijd, eindtijd, onderwerp Afspraak maken / aanpassen Bestaat er al een target-afspraak in Outlook? Zo ja, bestaande aanpassen Zo nee, nieuwe aanmaken EntryID bijhouden in Excel!

Targets naar Outlook schrijven Start Outlook Altijd maar één instantie van Outlook (al zijn meerdere vensters wel mogelijk) Daarom geen GetObject nodig Set olk = New Outlook.Application Set nsp = olk.GetNamespace("MAPI") Set fld = nsp.GetDefaultFolder(…) Gegevens naar Outlook NieuwID = SchrijfTargetNaarOutlook(…)

Targets naar Outlook schrijven Gegevens naar Outlook Uit: EntryID = "" ja bestaat afspraak al? In: EntryID target = 0? nee maak nieuwe afspraak nee vul gegevens in Uit: EntryID nee vind bestaande afspraak ja target = 0? verwijder afspraak ja Uit: EntryID = ""

Targets naar Outlook schrijven Afspraak maken/aanpassen Als afspraak nog niet bestaat  maken Als afspraak bestaat  aanpassen Hoe vind ik een afspraak in Outlook?? Unieke EntryID per item! .Find of .Restrict op de Items in een Folder Set itm = fld.Items.Find(filter) Set itms = fld.Items.Restrict(filter) Maar ja, dat filter…

Targets naar Outlook schrijven Filter bij Find / Restrict [Veldnaam] = "Waarde" Maar… geen wildcards en geen EntryID!! Bestaand veld misbruiken? AppointmentItem 95 velden Design-time beschikbaar 68 Bruikbaar in Restrict 48 Datatype String 8 Niet Read-only 5 (Body, Subject etc.)

Targets naar Outlook schrijven Filter bij Find / Restrict [Veldnaam] = "Waarde" Werkt wel met UserProperties! Dus hoe vind ik een AppointmentItem? UserProperty aanmaken op mapniveau UserProperty toevoegen aan AppointmentItems filter = "[UserProp] = ""waarde""" Set Afspraak = .Items.Find(filter) UserProperty: MyEntryID!!!

Targets naar Outlook schrijven Function VindAfspraak(EntryID) As AppointmentItem Dim Afspraak As AppointmentItem filter = "[MyEntryID] = """ & EntryID & """" Set Afspraak = fld.Items.Find(filter) Set VindAfspraak = Afspraak End Function

Automatisch werkbalk maken

Automatisch werkbalk maken Werkbalken in Office: CommandBars Set cmb = Application.CommandBars.Add(…) Belangrijke eigenschappen Hoe ziet de balk eruit?  Position, Visible Is het de menubalk?  Menubar (bij Add) Tijdelijk  Temporary (bij Add)

Automatisch werkbalk maken Knoppen in Office: CommandBarControls Set btn = cmb.Controls.Add(…) Button, Popup, Combo Belangrijke eigenschappen: Hoe ziet knop eruit  Caption, FaceID, Style Wat doet de knop  OnAction Hoe vind ik hem terug?  Tag macro 'MaakBalken'

Automatisch werkbalk maken Aanmaken bij openen document Private Sub Workbook_Open() Verwijderen (!) bij sluiten document Private Sub Workbook_BeforeClose(Cancel As Boolean) Bij verwijderen ook alle knoppen verwijderen Kunnen zijn verplaatst door gebruiker Vandaar de Tag! Application.CommandBars.FindControl Application.CommandBars.FindControls

Class modules

Class Modules Wat? Waarom? Class module: definitie van object "Object-geörienteerd programmeren in VBA" Waarom? Makkelijk herbruikbare code (bouwstenen) Encapsulation / black-box

Class Modules Ontwerpen Programmeren Gebruiken Interface Functionaliteit Programmeren Class module Gebruiken Bestaande code veel eenvoudiger

Class Modules OfficeApplicaties class Eenvoudig applicaties starten Access, Excel, Outlook, PowerPoint, Word Client-code vereenvoudigd: Dim wrd As Word.Application Dim oap As OfficeApplicaties Set oap = New OfficeApplicaties Call StartApplicatie(AppWord) Set wrd = oap.WordApplicatie

Class Modules OfficeApplicaties class Method StartApplicatie (met parameters Zichtbaar, NieuweInstantie) Method StopApplicatie Properties voor elke applicatie

Class Modules OutlookAgenda class Eenvoudig afspraken beheren vanuit VBA Zoeken, maken, wijzigen, verwijderen Gebruik makend van UserProperty Client-code vereenvoudigd: Dim age As OutlookAgenda Set age = New OutlookAgenda Call age.WijzigAfspraak(EntryID, …) Call age.VerwijderAfspraak(EntryID, …)

Class Modules OutlookAgenda class Methods: MaakAfspraak, VerwijderAfspraak, VindAfspraak, WijzigAfspraak Properties OutlookApplicatie en Selectieveld

Bladwijzers behouden

Bladwijzers behouden Bladwijzers in sjabloon voor invoegen gegevens Bladwijzers gaan verloren na invullen gegevens Soms wenselijk om bladwijzers te behouden Bijv. als meermalen gegevens ingevoegd

Bladwijzers behouden Eenmalige actie: Rpt.Bookmarks("Datum").Range.Text = "6-3-08" Bladwijzer behouden: Set bmk = Rpt.Bookmarks("Datum") Set rng = bmk.Range rng.Text = "6-3-08" Rpt.Bookmarks.Add "Datum", rng

Rapport automatisch e-mailen

Rapport automatisch e-mailen Geen methode voor binnen Word Outlook aanspreken E-mail aanmaken Set eml = olk.CreateItem(olMailItem) Attachment bijvoegen eml.Attachments.Add Rapport.FullName