2016-10-12 32 views
1

UFTでExcelテストを実行していますが、「DataTable.ImportSheet operation failed.Invalid file」というエラー番号20012が表示されることがあります。DataTable.ImportSheet操作が失敗しました。無効なファイル

これは、スクリプトをインポートする私の方法です:

DataTable.ImportSheet filepath,scriptname,"Action2" 
  • ファイルパスは、多くの人がシート(スクリプト)エクセルconatins私のワークブックのパスです

  • SCRIPTNAME:スクリプトの名前私は実行したい

  • Action2:スクリプトに含まれる可能性のあるすべてのキーワードのすべての呼び出しを含みます。

何か助けてください、どうしてこのエラーが発生していますか。

問題は、これが一部のスクリプトや3〜4回の実行時間後にはうまくいきません。

Excel 2016とUFT 12で作業しているときに問題がExcel自体ではなく、コード上にあると思いますか?ワークシートをインポートするための

+0

の全ファイルの使用Datatable.Importをインポートしたい場合は? @ Dave [回答](http://stackoverflow.com/a/40002722/6352151)に記載されているように、パラメータとして渡しているものに問題がある可能性があります。 –

+0

[この投稿] http://stackoverflow.com/questions/40126567/loop-all-the-rows-of-a-worksheet-and-copy-them-into-a-blank-sheet)、私はここに返信しています。そのコード行にUFTでブレークポイントを設定し、すべての変数をチェックし、それらが正しく入力されていることを確認して、ファイルとワークシートの両方が存在することを確認してください(同じ拡張子を持つ同じ名前、 '.xls'は' xlsxとは違う.xlsx'など)と、Action2も存在します(テストのためだけです)。結果を知りましょう –

答えて

1

UFTの構文は次のとおりです。これは、あなたがしたいソースシートのファイル名(およびパス)Excelファイルに、名前(またはインデックス)をパラメータとして渡す必要があることを意味

DataTable.ImportSheet FileName, vtSrcSheet, vtDstSheet 

インポートするシート、およびインポートするシートの宛先(たとえば、「グローバル」または「アクション1」など)

scriptnameは、インポートしようとしているワークシートの正確な名前でなければ、このエラーが発生します。

あなたは私達にあなたの `filepath`と` scriptname`変数の値が何であるかの例を与えることができます代わりにDatatable.ImportSheet

+0

ファイルパスが有効で、 '.xls'または' .xlsx'ファイルを指している限り、インポートするシートが存在し、指定した名前を持ち、Action2が存在する必要があります有効である。 importコマンドが実行されたときにワークブックを開いていると、Note importも失敗します。 – Dave

+0

私の場合、scriptnameはインポートしようとしているワークシートの正確な名前です。インポートするワークシートをUFTがどのように見つけるかを除いてFilePathとFile Nameのパラメータとして渡す必要がありますか? – sourh

+0

シートをインポートする前に、すべてのExcelインスタンスを閉じます。なぜこのエラーが発生したのか驚いています。 – sourh

関連する問題