VC++2005からExcelの操作 – プログラミング – Home

通知
すべてクリア

VC++2005からExcelの操作


たか
 たか
(@たか)
ゲスト
結合: 25年前
投稿: 73
Topic starter  

VC++2005からExcel2007の操作でこまっております。

以下のSaveAsのところで、例外が発生して終了してしまいます。
Excel2003だと同じソースで動いたのですが(import以外は変えて)
2007だと何か変更が必要でしょうか。

-------------------

#include stdafx.h
#include docobj.h

#import C:\Program Files\Common Files\Microsoft Shared\Office12\MSO.dll
no_namespace rename(DocumentProperties, DocumentPropertiesXL)
#import C:\Program Files\Common Files\Microsoft Shared\VBA\VBA6\VBE6EXT.OLB
no_namespace
#import C:\Program Files\Microsoft Office\Office12\EXCEL.EXE rename
(DialogBox, DialogBoxXL) rename(RGB, RBGXL) rename
(DocumentProperties, DocumentPropertiesXL) no_dual_interfaces
using namespace Excel;

int _tmain(int argc, _TCHAR* argv[])
{
::CoInitialize(NULL);

{
_ApplicationPtr pXL;
pXL.CreateInstance(LExcel.Application);

WorkbooksPtr pBooks = pXL->Workbooks;
_WorkbookPtr pBook = pBooks->Open(D:\\DLLTEST\\test.xlsx);

pBook->SaveAs
(D:\\DLLTEST\\test2.xls, ::xlExcel9795, ::vtMissing, ::vtMissing, ::vtMissing
, ::vtMissing, ::xlNoChange,

::vtMissing, ::vtMissing, ::vtMissing, ::vtMissing, ::vtMissing);

pBook->Close();

pXL->Quit();
}

::CoUninitialize();

return 0;
}

-------------------------
デバッグで実行すると↓で落ちています。

comip.h

void _Release() throw()
{
if (m_pInterface != NULL) {
m_pInterface->Release(); ← ここ
}
}


引用解決済
トピックタグ
subaru
 subaru
(@subaru)
ゲスト
結合: 19年前
投稿: 381
 

>以下のSaveAsのところで、例外が発生して終了してしまいます。
例外は_com_error型でもcatchできないでしょうか?
例外の内容が調べられれば原因がわかるかもしれません。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました