2016-06-29 5 views
0

私はCSVファイルに対してグリッドデータ検証を実行し、2つのワークシートを含むExcelファイルに結果を保存するスクリプトをHP UFT 12で作成しています。
これは、セルの書式設定が可能で、データの比較などが簡単であるため、ユーザーにとってははるかに明確であるため、Excel用にExcelを使用しています。ブックを保存し、TITUS(またはその他のドキュメント分類アドイン)ポップアップを処理する方法は?

私のコードは自分のマシンで動作しますが、クライアントにはTITUSドキュメント分類アドインがインストールされているので、スクリプトを実行するたびにTITUSポップアップメッセージが表示されるため、保存時にドキュメントを分類する。おそらくobjExcel.DisplayAlerts = Falseのためにメッセージはユーザーに表示されませんが、スクリプトは進んでいません。

以下は、問題に関連する私のコードの部分です(私は機密性の理由からほとんどのコードを省いています)。

Dim objExcel : Set objExcel = CreateObject("Excel.Application") 
Dim objWorkbook : Set objWorkbook = objExcel.Workbooks.Add 
objExcel.Visible = False 
Dim wsGrid : Set wsGrid = objWorkbook.Worksheets(1) 
wsGrid.Name = "Grid Data" 
Dim wsExported : Set wsExported = objWorkbook.Worksheets.Add 
wsExported.Name = "Exported Data" 

' Internal code to perform validation and fill worksheets ... 

objExcel.DisplayAlerts = False 
objWorkbook.SaveAs "C:\my_folder_path\my_file_name.xls" ' This is where it hangs in machines where the add-in is installed 
objWorkbook.Close 
objWorkbook.Quit 
Set objWorkbook = Nothing 
Set objExcel = Nothing 

私はオンラインで検索しましたが、これまでのところこれまで何も見つかりませんでした。私はthisthisを見つけましたが、Outlook用のTITUSに関連しており、いずれも問題は適切に解決されていません。
誰でもこれを解決する方法を知っていますか、またはこの問題を解決するための研究資料を指し示すことができますか?

ありがとうございます。

objExcel.DisplayAlerts = False 
objExcel.EnableEvents = False ' this is the problem solver for the matter! 
objWorkbook.SaveAs "C:\my_folder_path\my_file_name.xls" 
objExcel.EnableEvents = True ' Not sure if this statement is necessary, though 
objWorkbook.Close 
objWorkbook.Quit 
Set objWorkbook = Nothing 
Set objExcel = Nothing 
+0

これがUFTで実行されている場合、関連するポップアップをオブジェクトリポジトリに追加してそのように処理できませんか? – Dave

+0

@Dave、それは私が試していないことの一つです。私はマシンにアドインをインストールしていません。また、オブジェクトは実行時に表示されません。コンボボックスやボタンオブジェクトは表示されなくても処理できますか?表示されないボタンで 'objButton.Click'のようなことをすることができますか? –

+1

アドインとしてExcelを実行している場合、Excel自体からダイアログにアクセスできるようにする必要があります。プログラムでポップアップを処理するために実装できるVBAメソッドがありますか?たぶんあなたはそれを処理するための最良の方法を見つけるためにあなたのdevマシンにインストールされているアドインを得ることができますか?他のすべてが失敗した場合は、常に 'SendKeys'呼び出しを使用してExcelアプリケーションに' Enter'をエコーし​​て、うまくいけばポップアップをクリアできますか? – Dave

答えて

3

、私は単純にファイルを保存する前にobjExcel.EnableEvents = Falseを追加することで、私の問題を解決するために管理する(私は私はこの前に考えていないのか分かりません) VBAコーダが、私の友人がこの

に取り組んでいたわけではない私たちが見つかったソリューションは、uはそれを保存するときには、任意の新しいブックを分類することを求められますタイタス

の行動にありました。既に保存されているワークブックではないことに注意してください。 だから我々は空白のブックを作成し、(必要な分類に)それを保存

それはどんなことなく、スムーズに動作するワークブックを取ると、それにデータを追加するためのコードを改正し、必要なファイルに

を作成するなど保存使用して問題。

0

I:それは見た目ほどばかばかしいほど簡単な

+0

ええと、毎回空白のブックを開き、内容を貼り付けて保存しますか?それはどういう仕組みですか?私はまだ私のスクリプトを実行する誰もが自分のコンピュータ上でそのようなブックを事前に作成する必要がありますので、私はこのソリューションが、このマニュアルアクションを必要としないので、より実用的だと思う... –

関連する問題