Access VBA

Min indgangsvinkel til VBA var, at jeg overhovedet ikke har arbejdet "hands on" med kode, siden de første par år af ingeniørstudiet, hvorfor min overordnede målsætning var "blot at komme komme i gang" dvs få en overordnet forståelse for hvordan strukturen i det hele var. Det har jeg fået og mere til.

Der er lagt vægt på øvelse, så man selv skal "bøvle" med koden, uden at få alt for meget forærende. Det er godt. Øvelserne har jeg oplevet, som værende bygget op, så man får en "værktøjskasse" med komponenter, som i et vist omfang kan genindgå i nogle af de efterfølgende øvelser. Også det er fint. Det stimulerer en til at tænke kreativt.

Alt i alt er mine forventninger indfriet.   ..

Lars Aaboe Kristensen, Ribe Amt, Teknik og Miljø

Access VBA

Rigtig god og hurtig respons fra underviser. Skal ikke vente ret lang tid på at få et svar på en problemstilling og spørger man efter en uddybning til eksempelvis en kode, kommer der hurtigt et svar, så man kan komme videre. Har fornemmelsen hele vejen igennem at underviser er villig at bruge den nødvendige tid på en, så man kan få løst opgaven. Bliver tvunget til at arbejde med opgaven, der er ikke nogen nem genvej, hvilket er rigtig godt.

Brian Lind Olsen, OUH Odense Universitetshospital

Excel VBA

Godt med muligheden for sparring med underviser og forslag til andre løsningsmetoder end mine egne - selvom mine også fungerede.

Godt med muligheden for ingen tidsbegræsning for kurset. Havde jeg - pga. arb. situation, brug for.

Anja Hansen, TDC

Excel VBA

Den lette tilgang, og de ret hurtige svar retur. På den måde føler man, man kan få "udnyttet" tiden bedst muligt. 

Jeg kan også godt li' emnerne i øvelserne. De har været meget brugbare - så er det bare at få "overført" til ens egen daglig brug :-)

Tina Eriksen, Skandinavisk Service Partner

Excel VBA

Det har bestemt været pengene værd. Jeg kender flere, som har taget VBA kursus on-site i et par dage eller deromkring , og de har slet ikke fået det samme ud af det som jeg har via denne side. Jeg har allerede udviklet små og større modeller til min arbejdsplads, og modellerne bruges allerede internationalt, det havde jeg ikke kunnet uden dette kursus.

Det er kanon, at man får personlig feedback og det går som regel tilmed hurtigt. Dygtig læremester, som sætter sig ind i mine specifikke problemstillinger - det er et stort plus. Den personlige kontakt er max vigtig.

Jeg vil anbefale dette til andre, der spørger til dette.

Michael Mortensen, DLH

Excel VBA

At jeg kan fordybe når jeg har tid og lyst, er super.

Virkelig hurtig respons fra underviseren - næsten døgnet rundt :)

Øvelserne indeholdt hvad jeg skulle bruge, for at komme videre med egne vba-projekter.

At man kunne sammenligne egne løsninger med underviserens var lærerigt.

Henrik Boss, Marel Bornholm

Excel VBA

Hurtig response på opgaver.

Udfordrende opgaver.

Flemming Pedersen, Semco Maritime

< >
Se flere referencer

Find data

Seek

Her følger en lille kodestump, der finder en bestemt post i kundekartoteket:

Public Sub Find()
    Dim db As Database
    Dim rs As Recordset
   
    Set db = CurrentDb()
    Set rs = db.OpenRecordset("Kunder")
   
    rs.Index = "PrimaryKey"
    rs.Seek "=", 13
    If rs.NoMatch Then
        MsgBox "Blev ikke fundet"
    Else
        MsgBox "Kunde nr. 13 hedder " & rs("Firma")
    End If
    rs.Close
Set rs = Nothing
End Sub

Bemærk at seek metoden kun kan bruges på indekserede kolonner, hvilket betyder, at den kun kan bruges på table recordssets.

 

Find

Hvis man skal finde informationer i dynasets eller snapshots skal man i stedet bruge Find metoden:

  • FindFirst: starter ved begyndelsen af recordsettet og finder den første forekomst af det søgte.
  • FindLast: starter i bunden og søger baglæns
  • FindNext: Starter ved den aktuelle post og finder næste forekomst
  • FindPrevious: Starter ved den aktuelle post og finder den forrige
  • NoMatch: Returnerer True, hvis det søgte ikke blev fundet

Det kunne se sådan her ud:

rs.FindFirst "KøbIalt >= 100000"

Og selve strukturen kunne sættes sådan her op:

rs.FindFirst betingelse
Do Until rs.NoMatch
    Match fundet - gør noget ved det!!
    rs.FindNext betingelse
Loop

 

SQL

Endelig kan vi bruge en SQL sætning når vi danner vores recordset:

strSQL = "SELECT * FROM Kunder WHERE KøbIalt >= 100000"
Set rs = db.OpenRecordset(strSQL, dbOpenSnapshot)
Do Until rs.EOF
Debug.Print rs("Firma")
rs.MoveNext
Loop

Når du har betalt for kurset får du adgang til øvelser til hver lektion. Og når du har fået godkendt din besvarelse får du desuden adgang til mine løsningsforslag med ekstra tips og trix.