Nun, importiert die DataTable.ImportSheet Methode einfach ein ganzes Blatt (eine Lasche/Blatt aus einer Excel-Datei). Soweit ich weiß, wird es Ihnen nicht erlauben, nur einige Zeilen davon zu importieren.
jedoch ...
Sie können den Code einrichten, um nur die Zeile, die Sie wollen verarbeiten. Sie möchten Ihre Schleife programmgesteuert statt automatisch steuern, also zuerst: Legen Sie Ihre Aktion (oder Ihren Test) so fest, dass nur OneIteration ausgeführt wird. Wenn die Aktion auf "In allen Zeilen ausführen" eingestellt ist, wird nur das Blatt betrachtet, das die letzte Zeile mit Daten enthält, und dann werden so viele Iterationen ausgeführt. Wenn Sie also ein Blatt mit Daten in den ersten vier Zeilen und einige Daten in Zeile 100 haben, versucht QTP, 100 Iterationen auszuführen, obwohl die Daten leer sind.
Um die Iterationseinstellungen für eine Aktion festzulegen, können Sie mit der rechten Maustaste auf die Aktion im Flussdiagramm klicken und Aktionsaufrufeigenschaften auswählen. Um Iterationen für einen ganzen Test festzulegen, klicken Sie mit der rechten Maustaste auf das Start-Oval, wählen Sie Eigenschaften, wählen Sie Ausführen, und suchen Sie dort die Einstellung.
Als nächstes erstellen Schleife ähnlich dies:
'ImportedSheetTabName = the name of the tab in Excel, you specified it during importsheet
for Row = 1 to DataTable.GetSheet(ImportedSheetTabName).GetRowCount
DataTable.GetSheet(ImportedSheetTabName).SetCurrentRow Row
if DataTable("script_ID",ImportedSheetTabName) = "1" 'based on your question
'do stuff with the row
'this is where you would put ALL of the work to be done...
'it can be as long as you need.
else
'do nothing. this will ignore all rows that are not Script ID = 1
end if
next
Was ich in meinem ganzen Blätter tatsächlich tun (um mit QTP verwendet werden) ist eine Spalte umfassen „Daten“ genannt, die einfach ein X hat in wenn die Zeile Datenblattdaten enthält. Ich kann buchstäblich alles einfügen, was ich will zwischen den Zeilen, einschließlich anderer Formeln und Berechnungen (Datenaufbau Sachen), Kommentare, Listen, etc ... und weiß, dass all das ignoriert wird, weil ich meine Schleifen von Hand kontrolliere.
Also, im Grunde, Sie verwenden ein Excel-Automatisierungsobjekt um das Blatt zu öffnen und die -relevant- Daten in die QTP Datatable kopieren, indem Sie direkt auf die Datentabelle zu schreiben. Das ist großartig, denn wenn Sie die DataTable dann exportieren, wenn Sie fertig sind, erhalten Sie eine angepasste Version Ihres Datenblattes. Sie könnten also alles in eine Funktionsbibliothek kapseln, um das QTP-Datenblatt vor dem eigentlichen Test zu laden. Klar eine fortgeschrittene Technik :) –