ITfjernundervisning

Excel VBA / Bonus materiale / Office integration

Søger du et "rigtigt" Excel VBA kursus?


Ja, jeg holder ikke kun fjernundervisningskurser

- jeg kan også komme ud i din virksomhed og undervise med udgangspunkt i jeres data og udfordringer.


Office integration

Det allerførste man skal gøre er, at etablere reference til objektsamlingen i det program, som man gerne vil arbejde samme med - det gør man i VBE i Tools menuen under References. Til Word hedder den "Microsoft Word 9.0 Object Library".

Kopier information fra Excel til Word (et dokument, der findes)

Ja, det kan gøres, som vist nedenfor

Sub CopyTableToWordDocument()
 Dim wdApp As Word.Application
 Range("A1:B6").Copy
 Set wdApp = New Word.Application
 With wdApp
  .Documents.Open Filename:="c:\test.doc"
  With .Selection
   'Indsætter i slutning af dokumentet
   .EndKey Unit:=wdStory
   .TypeParagraph
   .Paste

   'Indsætter ved bogmærket med navn "test"
   .GoTo What:=wdGoToBookmark, Name:="Test"
   .Paste
  End With
  .ActiveDocument.Save
  .Quit
 End With
 Set wdApp = Nothing
End Sub

Kopier informationer til et aktivt Word dokument

Sub CopyTableToOpenWordDocument()
 Dim wdApp As Word.Application
 Range("A1:B6").Copy
 Set wdApp = GetObject(, "Word.Application")
 With wdApp.Selection
  .EndKey Unit:=wdStory
  .TypeParagraph
  .Paste
 End With
 Set wdApp = Nothing
End Sub

Forudsætter, at Word er åben!

Lav et nyt Word dokument

Sub CopyTableToAnyWordDocument()
 Dim wdApp As Word.Application
 Range("A1:B6").Copy
 On Error Resume Next
 Set wdApp = GetObject(, "Word.Application")
 If wdApp Is Nothing Then
  Set wdApp = GetObject("", "Word.Application")
 End If
 On Error GoTo 0

 With wdApp
  .Documents.Add
  .Visible = True
  With .Selection
   .EndKey Unit:=wdStory
   .TypeParagraph
   .Paste
  End With
 End With
 Set wdApp = Nothing
End Sub

Integration med Internet explorer

Et lille eksempel på, hvordan du kan hente informationer ud at et web-site, som du kan bruge i Excel. Du skal huske at referere til "Microsoft Internet Controls"

Sub HentInfo()
 Dim oIE As SHDocVw.InternetExplorer
 Dim sPage As String
 Dim intStart, intSlut As Long
 Dim Info As String
 Set oIE = New SHDocVw.InternetExplorer
 oIE.Navigate "http://www.dr.dk"
 Do Until oIE.ReadyState = READYSTATE_COMPLETE
  DoEvents
 Loop

 sPage = oIE.Document.body.InnerHtml
 intStart = InStr(1, sPage, "Vejret")
 intSlut = InStr(intStart, sPage, "læs mere")
 Info = Mid(sPage, intStart, intSlut - intStart + 8)
 MsgBox Info
End Sub

Der er på denne side en god beskrivelse af, hvordan man også kan gøre: http://www.microsoft.com/mind/0898/dom.asp

 


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.


<<- Pivot tabeller

Spor ændringer ->>