Help Center > Studio v11 Help

Makros verwenden, um ein Skript auszuführen

Um ein Skript durch die Verwendung eines Makros auszuführen, erstellen Sie das Makro in Visual Basic for Applications (VBA).

  1. Öffnen Sie die Datendatei, die mit dem Skript verknüpft ist, welches Sie ausführen möchten.

    Wichtig: Vergewissern Sie sich, dass Sie eine Datei mit Makros, eine .xlsm-Datei, verwenden.

  2. Drücken Sie Alt+F11.
  3. Klicken Sie im VBA-Editor unter Microsoft Excel-Objekte auf das Blatt, welches die Daten enthält, die Sie ausführen möchten.
  4. Kopieren Sie den unten stehenden Code und fügen Sie ihn in das Fenster ein.
  5. Ersetzen Sie unten den Datendateipfad, den Skriptdateipfad, den Blattnamen und den Namen für die automatische Anmeldung mit den Informationen für Ihre Dateien und mit Ihrem Namen für die automatische Anmeldung.
  6. Klicken Sie auf Speichern und schließen Sie den VBA-Editor.
  7. Klicken Sie in Excel auf die Registerkarte Ansicht und dann auf Makros.
  8. Klicken Sie auf das Makro, das ausgeführt werden soll, und klicken Sie anschließend auf Ausführen.

Hinweis: Vergewissern Sie sich, dass das Excel-Add-In nicht aktiv ist (dass Sie nicht in Foundation angemeldet sind).

Query Makros

Ein veröffentlichtes Skript ausführen

  1. Add-In-Objekte definieren.

    Dim StudioMacrosAddin, StudioMacros

  2. Add-In-Objekt aus Excel erhalten.

    Set StudioMacrosAddin = Application.COMAddIns.Item ("WinshuttleStudioMacros.AddinModule")

  3. COM-Objekt von Add-In-Objekt erhalten.

    Set StudioMacros = StudioMacrosAddin.Object.Macros

  4. Die auszuführende, veröffentlichte Datei wählen und weitere Ausführungseigenschaften definieren (siehe Eigenschaften für ein Query Add-In-Objekt).

    Dim StudioMacros.PublishedFile = "Table_20150113_150602"

  5. Die veröffentlichte Skriptdatei öffnen.

    StudioMacros.OpenPublishedScript

  6. Add-In-Objekt ausführen, um das Query Skript auszuführen.

    StudioMacros.RunScript

Ein bestehendes Query Skript ausführen.

  1. Add-In-Objekte definieren.

    Dim StudioMacrosAddin, StudioMacros

  2. Add-In-Objekt aus Excel erhalten.

    Set StudioMacrosAddin = Application.COMAddIns.Item ("WinshuttleStudioMacros.AddinModule")

  3. COM-Objekt von Add-In-Objekt erhalten.

    Set StudioMacros = StudioMacrosAddin.Object.Macros

  4. Das auszuführende Query Skript wählen und weitere Ausführungseigenschaften definieren (siehe Eigenschaften für ein Query Add-In-Objekt).

    Dim strShuttleFile = "C:\Table_20140930_143519.qsq"

  5. Das auszuführende Skript öffnen.

    StudioMacros.OpenScript (strShuttleFile)

  6. Add-In-Objekt ausführen, um das Query Skript auszuführen.

    StudioMacros.RunScript

Eigenschaften für ein Query Add-In-Objekt

Ausführungseinstellungen oder erweiterte Ausführungsoptionen, die im Skript eingestellt sind, werden während der Ausführung des Makros nicht berücksichtigt. Diese müssen eingestellt werden, indem verschiedene Eigenschaften angewendet werden, die für das Add-In-Objekt eingeblendet wurden.

Eigenschaft/Funktion

Wert(e)/Parameter

Beschreibung

PublishedFile

Beschreibung der veröffentlichten Datei

Wählt die auszuführende, veröffentlichte Datei aus

OpenScript ()

Skriptdateipfad

Wählt das auszuführende Skript aus

OpenPublishedScript

NV

Öffnet das veröffentlichte Skript

StartRow

Zeilenanzahl

Excel-Zeile, ab der heruntergeladene Datensätze geschrieben werden sollen

RecordsToFetch

Anzahl an Datensätzen

Anzahl der Datensätze, die bei der Query Ausführung ausgegeben werden sollen

WriteHeader

True/False

Schreibt Zuordnungskopfzeilen für die heruntergeladenen Daten

ExtractAllRecords

True/False

Überschreibt RecordsToFetch und extrahiert alle Datensätze

RunReason

Ausführungsgrund-String

Einen Grund für diese Ausführung angeben

LogCell

Zelle

Zelle, in die Ausführungsprotokolle geschrieben werden sollen

SheetName

Name des Blattes

Name des Blattes, der für die Ausführung verwendet werden soll

AlfName

AutoLogon-Datei

Name der zu verwendenden automatischen Anmeldung

RunType

Ausführungsart

0 – Ausführung, um einstellungsgemäß Datensätze einzuholen

1 – RecordsToFetch überschreiben und nur die ersten 50 Datensätze herunterladen

RunScript

NV

Skript ausführen

 

Beispielcode: Ein veröffentlichtes Skript ausführen

 Sub RunPublishedQSQfile() '---------------------------------------------- ' Makro zur Verwendung des WinshuttleStudioMacros-Addins mit Code' 'RunPublishedfile-Makro ' Dim StudioMacrosAddin, StudioMacros On Error GoTo ErrHandler ' RUFEN SIE DAS ADD-IN-OBJEKT AUS EXCEL AB Set StudioMacrosAddin = Application.COMAddIns.Item("WinshuttleStudioMacros.AddinModule") If StudioMacrosAddin Is Nothing Then MsgBox "Nicht in der Lage, das Objekt WinshuttleStudioMacros.AddinModule-Add-in zu initialisieren" Exit Sub End If ' Rufen Sie das COM-Objekt aus dem Add-In-Objekt ab Set StudioMacros = StudioMacrosAddin.Object.Macros If StudioMacros Is Nothing Then MsgBox "Nicht in der Lage, das Com-Objekt der Makros zu initialisieren“ Exit Sub End If ' Wählen Sie die auszuführende, veröffentlichte Datei StudioMacros.PublishedFile = "Table_20150113_150602" StudioMacros.StartRow = 2 ' Falls nicht eingestellt, werden die Datenbanken gemäß den Skripteinstellungen abgerufen StudioMacros.RecordsToFetch = 100 ' Bei True werden alle Datensätze abgerufen. Bei False wird StudioMacros.RecordsToFetch berücksichtigt StudioMacros.ExtractAllRecords = True ' Bei True werden während der Ausführung Kopfzeilen geschrieben StudioMacros.WriteHeader = True ' Aktivieren Sie RunReason, um einen Ausführungsgrund bereitzustellen. StudioMacros.RunReason = "Run Reason" 'Run = 0, RunOnlyFiftyRecords = 1 StudioMacros.RunType = 0 ' Rufen Sie die Ausführungsfunktion ab, um das veröffentlichte Skript zu öffnen StudioMacros.OpenPublishedScript ' Rufen Sie die Ausführungsfunktion ab, um das Skript auszuführen StudioMacros.RunScript Exit Sub ErrHandler: MsgBox Err.Description End Sub 

Beispielcode: Ein bestehendes Query Skript ausführen

  Sub RunNormalQSQfile() '---------------------------------------------- ' Makro zur Verwendung des WinshuttleStudioMacros-Addins mit Code '---------------------------------------------- ' ' RunNormalQsqFile-Makro ‚ Dim StudioMacrosAddin, StudioMacros On Error GoTo ErrHandler ' RUFEN SIE DAS ADD-IN-OBJEKT AUS EXCEL AB Set StudioMacrosAddin = Application.COMAddIns.Item("WinshuttleStudioMacros.AddinModule") If StudioMacrosAddin Is Nothing Then MsgBox "Nicht in der Lage, das Objekt WinshuttleStudioMacros.AddinModule-Add-in zu initialisieren" Exit Sub End If ' Rufen Sie das COM-Objekt aus dem Add-In-Objekt ab Set StudioMacros = StudioMacrosAddin.Object.Macros If StudioMacros Is Nothing Then MsgBox "Nicht in der Lage, das COM-Objekt der Makros zu initialisieren“ Exit Sub End If StudioMacros.StartRow = 2 ' Falls nicht eingestellt, werden die Datenbanken gemäß den Skripteinstellungen abgerufen StudioMacros.RecordsToFetch = 100 ' Bei True werden alle Datensätze abgerufen. Bei False wird StudioMacros.RecordsToFetch berücksichtigt StudioMacros.ExtractAllRecords = True ' Bei True werden während der Ausführung Kopfzeilen geschrieben StudioMacros.WriteHeader = True ' Aktivieren Sie RunReason, um einen Ausführungsgrund bereitzustellen. StudioMacros.RunReason = "Run Reason" 'Run = 0, RunOnlyFiftyRecords = 1 StudioMacros.RunType = 0 strShuttleFile = "C:\Users\ssingh\Documents\Winshuttle\Studio\Script\Table_20140930_143519.qsq" ' Rufen Sie die Ausführungsfunktion ab, um das spezifizierte Skript zu öffnen StudioMacros.OpenScript (strShuttleFile) ' Rufen Sie die Ausführungsfunktion ab, um das Skript auszuführen StudioMacros.RunScript Exit Sub ErrHandler: MsgBox Err.Description End Sub 

Bekannte Probleme

  1. Makros, die in Transaction oder Query v10.x erstellt wurden, werden nicht automatisch in das Studio v11 Format konvertiert. Makros im Studio v11 Format sind nicht mit v10.x kompatibel. Um die Makros auszuführen, müssen Sie manuell konvertiert werden.
  2. Während Sie Makros verwenden, sollten die Winshuttle Add-Ins nicht geladen werden (Sie sollten nicht bei Foundation angemeldet sein). Die Winshuttle Add-Ins können aktiviert werden.
  3. ExtractAllRecords ruft alle Datensätze ab, selbst wenn die Anzahl der Datensätze die erlaubte Höchstzahl für herunterzuladende Datensätze übersteigt.
  4. Die Startzeile ist immer 2, außer Sie geben eine andere Zeile an.
  5. Datendateien müssen den Data Review Workflow anwenden, um durch Makros im Foundation Modus ausgeführt zu werden.
  6. In Foundation abzuspeichern funktioniert nicht, wenn ein Makro dazu verwendet wird, eine Datendatei im Foundation Modus auszuführen.