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

Det har været godt at selv kunne bestemme farten, samt bruge al den tid man nu selv synes for at lave opgaverne.

Det har været et hårdt kursus, men jeg har virkelig lært meget og er mere rustet til at lave nye makroer, hvor jeg så selv kan gå i i VBA og lave rettelser, fordi jeg kan forstå programmet.

Margit Gravgaard Larsen, Novo Nordisk A/S

Excel VBA

Hurtige tilbagemeldinger på spørgsmål og øvelser. God opbygning af kurset

Sune Jeppson, Arbejdernes Landsbank

Excel VBA

Det er rart at kunne tage kurset i sit eget tempo, når det lige passer ind, men det giver også en risiko for at det lige bliver langstrækt nok, men så er det godt underviseren kan holde én lidt i ørerne med mails wink

Eva Bonne Alkærsig, EBA InterrimControlling

Excel VBA

Super form for kursus, har været perfekt at jeg kunne koncentrere mig om kurset når jeg havde tid.

Hurtig tilbagemelding på øvelser og altid hurtigt svar tilbage når man havde brug for hjælp.

Lækkert at man får dine løsningsforslag så man kan få ideer til at skrive scriptet på en anden måde.

Henrik Madsen, Alfa Laval Kolding A/S

Excel VBA

Det har været meget nærværende og personlig fjernundervisning med hurtige svar på spørgsmål og feedback på opgaver. Der har været stor engagement og ejerskab fra underviserens side.

Det faglige niveau har været vekslende mellem "begynder" og "ekspert" opgaver.

Brian Deleuran, Radiometer

< >
Se flere referencer

Sortering af data

Afhængigt af hvilken recordset type man arbejder med kan man få sorteres sine data:

Table

Her skal man bruge index metoden - et lille eksempel hentet fra hjælpefilen:

Sub IndexPropertyX()

    Dim dbsNorthwind As Database
    Dim tdfEmployees As TableDef
    Dim rstEmployees As Recordset
    Dim idxLoop As Index

    Set dbsNorthwind = OpenDatabase("Northwind.mdb")
    Set rstEmployees = dbsNorthwind.OpenRecordset("Employees")
    Set tdfEmployees = dbsNorthwind.TableDefs!Employees

    With rstEmployees

        ' Enumerate Indexes collection of Employees table.
        For Each idxLoop In tdfEmployees.Indexes
            .Index = idxLoop.Name
            Debug.Print "Index = " & .Index
            Debug.Print "  EmployeeID - PostalCode - Name"
            .MoveFirst

            ' Enumerate Recordset to show the order of records.
            Do While Not .EOF
                Debug.Print "    " & !EmployeeID & " - " & _
                    !PostalCode & " - " & !FirstName & " " & _
                    !LastName
                .MoveNext
            Loop

        Next idxLoop

        .Close
    End With

    dbsNorthwind.Close

End Sub

Dynaset

Her kan man bruge Sort metoden på recordsettet. Et lille eksempel jeg har bikset sammen:

Public Sub Gennemloeb()
    Dim db As Database
    Dim rs, rs2 As Recordset
    Dim intAntal As Integer
    Set db = CurrentDb()
    Set rs = db.OpenRecordset("Kunder", dbOpenDynaset)
    rs.Sort = "KøbIalt"
    rs.MoveFirst
    Set rs2 = rs.OpenRecordset
   
    Do While Not rs2.EOF
        Debug.Print rs2("Kundenr") & " " & rs2("Firma") & " " & rs2("KøbIalt")
        rs2.MoveNext
    Loop
    rs.Close
    rs2.Close
End Sub

Og her er forklaringen på at der skal bruges 2 recordsets:

"When you set this property for an object, sorting occurs when a subsequent Recordset object is created from that object."

SQL

Endelig kan man når man henter informationerne ind via et SQL kald med det samme sørge for at de er sorterede:

strSQL = "SELECT * FROM Kunder WHERE KøbIalt >= 100000 ORDER BY KøbIalt"

Hvis du vil lære mere om SQL kan jeg anbefale et kursus :-)

 - eller at du kigger på www.w3schools.com

 

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.