Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Www.nr.no TIF seminar -Visual Basic (VBA) og RExcel Elisabeth Orskaug Norsk Regnesentral Oslo, 8. november 2011.

Liknende presentasjoner


Presentasjon om: "Www.nr.no TIF seminar -Visual Basic (VBA) og RExcel Elisabeth Orskaug Norsk Regnesentral Oslo, 8. november 2011."— Utskrift av presentasjonen:

1 www.nr.no TIF seminar -Visual Basic (VBA) og RExcel Elisabeth Orskaug Norsk Regnesentral Oslo, 8. november 2011

2 Innhold ► Visual Basic for Applications (VBA) ► RExcel ► Hvis man skal lage egne funksjoner med RExcel (makroer), trenger en å kunne Visual Basic.

3 Visual Basic ► Programmeringsspråk ► Kommuniserer med Excelarket ► Lage makroer

4 Skrive makro Sub makroNavn(). ‘gjør dette.. End Sub

5 Deklarering av variabler ► Deklarer med Public, Dim eller Private. ► Eksempler: ▪Dim vektor() As String ▪Private x As Integer, y As Integer ▪Public ark1 As Worksheet OBS! Hvis du deklarerer minst en variabel, må du angi datatypen til alle variabler!.

6 Funksjoner Function funksjonNavn(). ‘Innhold. End Function ->Kan kalle på funksjonen fra en makro eller en annen funksjon ved å skrive navnValgfri = funksjonNavn().

7 Eksempel Function myFunction(start As Integer, ant As Integer, vektor() As String) As Double() … End Function Sub makro temp = myFunction(start, ant, vektor) End makro

8 Kalle på en makro

9 Lage button

10 Automatisk makro ► Kan få hjelp til å skrive kode ved å kjøre en «automatisk» makro i Excel. ► Kan så kopiere ut koden en trenger fra dette.

11 Skrive til/fra celle ► Hente verdi fra celle: ▪HenterVerdi = Range(“celleNavn”).Value ► Skrive til celle: ▪Range(“celleNavn”).Value = verdi

12 IF statements If condition Then statement ElseIf statement Else statement EndIf

13 Beskjedboks – MsgBox «beskjed» ► Gi informasjon til brukeren, for eksempel dersom noe informasjon ikke er utfylt/celler er blanke. ► Kan brukes til å lete etter feil.

14 Flere ark ► En kan benytte flere ark i en Excelfil. For eksempel data i et ark og plott/beregninger i et annet ark. ► Dersom man har dette må en presisere hvilket ark man jobber på når man skriver en makro. F.eks: ▪Set ark1 = Workbooks(“Excel.xlsm").Worksheets(“NavnArk1") ▪Set ark2 = Workbooks(“Excel.xlsm").Worksheets(“NavnArk2") ▪ark1.Range(«celle»).Value ▪ark2.Range(«celle»).Value

15 Flere Excel-filer ► En kan ha flere Excel-filer oppe, og kommunisere mellom de. ► Dersom filen en kaller på ikke er oppe, får en feilmelding.

16 RExcel ► Gratis program for å kommunisere mellom Excel og R. ► Lastes ned fra nettsiden: "http://rcom.univie.ac.at/ " Trykk på tab "download" øverst. Trykk på linken: "RAndFriendsSetup2130V3. 1-16-1". Lagre denne og installer. Trykk ok på alt. Tar noen minutter..http://rcom.univie.ac.at/RAndFriendsSetup2130V3. 1-16-1

17 Inkludere R kode i makro RInterface.StartRServer – starter R RInterface.RRun – kjører R kode RInterface.PutArray – array fra Excel til R RInterface.GetArray – array fra R til Excel RInterface.PutDataframe – dataframe fra Excel til R RInterface.GetDataframe – dataframe fra R til Excel RInterface.StopRServer – avslutter R Rinterface.RunRFile – kjører en R fil Søk om hjelp: RExcel Help

18 RExcel tips ► Anbefaling av rekkefølge: test ut først i R og lag fullstendig kode som skal inn i RExcel. Når koden er ferdig, skriv så dette inn i Visual Basic. ► Dersom makro feiler, bruk beskjedbokser for å søke etter hvor feilen oppstår. ► Søk etter hjelp i Google ► For inspirasjon se: ▪M:\UDI\Levert\Sensitivitetsanalyse.xlsm -> fokus på Visual Basic, og kommunikasjon mellom Excelfiler. ▪M:\Klif\Leveranse\ProsjektUtvidelseTotalkostnad20timer\estim eringAvMarginalkostnadsfunksjon.xlsm -> fokus på RExcel


Laste ned ppt "Www.nr.no TIF seminar -Visual Basic (VBA) og RExcel Elisabeth Orskaug Norsk Regnesentral Oslo, 8. november 2011."

Liknende presentasjoner


Annonser fra Google