Borland Builder C++ 2009 を使用しています。ユーザーが指定した Excel でファイルを開くことができるボタンをフォームに追加したいと考えています。これを行う方法が思いつきません。他のコードや実行可能ファイルとリンクする方法を知っています。使用できる Microsoft Excel 実行可能ファイルはありますか? その場合、どのようにファイルを指定できますか? これに関するヒント、または少なくともオンラインで見る場所があれば、大歓迎です。
4 に答える
ファイルの種類が Excel に登録されていると仮定すると、"open" 動詞を使用して、ファイルに対して ShellExecute() を呼び出すことができます。これにより、ユーザーがエクスプローラーでダブルクリックしたかのようにファイルが開かれ、Excel が呼び出されます。
そうではなく、Excel がインストールされていると想定できる場合は、代わりに「excel」をアプリケーションとして ShellExecute() に渡し、ファイルのパスをパラメーターとして渡すことができます。(私はこれをテストしなかったことに注意してください。ただし、[実行] ダイアログからは機能したので、ShellExecute() からも機能するはずです)。
試す:
print("ShellExecute(NULL, "open" ,"Waypoint Tool.xls", "C:\\Documents and Settings\\Lab1\\My Documents\\", NULL, SW_SHOWNORMAL);");
このページを見る: http://msdn.microsoft.com/en-us/library/bb762153(VS.85).aspx
3番目のパラメータとしてopenを実行したいファイルと4番目のディレクトリが必要なようです。
ありがとう、アンディ。あなたが提案したように、私は ShellExecute() を使用しています.Excelをアプリケーションとして、ファイルのパスをパラメータとして指定しています. Excel を開くことはできますが、ファイルが見つからないようです。パス全体、パスの一部を変更せずに入力して、ファイルを移動しようとしました。私が使用するコードは次のとおりです。
ShellExecute(NULL, "open" ,"Excel.exe", "C:\\Documents and Settings\\Lab1\\My Documents\\Waypoint Tool.xls", NULL, SW_SHOWNORMAL);
そのため、このファイルが見つからない理由を突き止める必要があります。
ただし、ShellExecute を使用するよう提案していただきありがとうございます。私は正しい軌道に乗っていると思います!
System()
コマンドで十分だと思います。どの Windows アプリケーションでも、.exe ファイルの場所とファイル パスを使用して任意のファイルを開くことができます。
例えば。、
system("PATH C:\\Program\ Files\\Microsoft\ Office\\OFFICE11;%PATH% & excel \"C:\\Documents and Settings\\User\\Desktop\\ExcelFile.xls\"");