Microsoft Excel

Excel und VBA: Formeln, Programmierung, Lösungen

Die Excel/VBA-Beispiele

Thema

Webabfrage periodisch aktualisieren und Ergebnisse speichern

Gruppe

Calculate

Problem

Eine WebAbfrage wird stündlich aktualisiert. Die importierten Werte werden in eine Arbeitsmappe in das Standardverzeichnis gespeichert.

Lösung
Geben Sie den Ereigniscode in das Klassenmodul des Arbeitsblattes ein.

ClassModule: Tabelle1

Private Sub Worksheet_Calculate()
   Dim wkb As Workbook
   Application.ScreenUpdating = False
   ThisWorkbook.Worksheets(1).Copy
   Set wkb = ActiveWorkbook
   On Error GoTo ERRORHANDLER
   Application.EnableEvents = False
   With wkb
      With .Worksheets(1)
         .Columns("B:IV").Delete
         .Cells.Interior.ColorIndex = xlColorIndexNone
         .Range("A1").CurrentRegion.TextToColumns _
            Destination:=Range("A1"), _
            DataType:=xlDelimited, _
            TextQualifier:=xlDoubleQuote, _
            ConsecutiveDelimiter:=False, _
            Tab:=False, _
            Semicolon:=True, _
            Comma:=False, _
            Space:=False, Other:=False
         .Columns.AutoFit
         .Range("A65536").ClearContents
      End With
      .SaveAs Application.DefaultFilePath & "\TxtImport_" & Format(Now, "yymmd_hhmmss") & ".xls", xlWorkbookNormal
      .Close savechanges:=False
   End With
ERRORHANDLER:
   Application.EnableEvents = True
   Application.ScreenUpdating = True
End Sub