/ システムソリューション部
Tweet
シェア
システム開発ブログ
最近の記事
- Chrome for Androidの新機能、Chrome to Mobileを試す
- ファイルサーバのBCP対策(アイロベックスの場合)
- Illustratorの矢印機能でラクラク矢印作成!
- システム会社選びのポイント
- システム保守の移管費用を抑えます
- アイロベックス通信発行してます
- ボタンのデザインをxmlで定義する
- Excel2010で行コピーをした場合に、画像ファイルのサイズが変わらないようにする
- Power Point2010 でスライド番号をつける方法
- Photoshop の秘宝
カテゴリー
- HTML全般 (2)
- Access (15)
- Android (5)
- .NET (14)
- Excel (9)
- Google Apps (5)
- HTML5 (3)
- iPhone (8)
- JAVA (14)
- Linux (7)
- Movable Type (15)
- MySQL (7)
- OpenOffice (10)
- Oracle (6)
- PHP (20)
- SQLServer (4)
- twitter (6)
- VBA (11)
- Webサイト構築・Web戦略 (32)
- Webサイト構築事例 (4)
- Windows (10)
- その他 (29)
- アクセス解析 (2)
- ウィジェット (1)
- システム設計 (5)
- システム開発事例 (3)
- システム開発体制 (1)
- セキュリティ (5)
- データベース (20)
- プロジェクト管理 (8)
- 品質管理・テスト (6)
- 帳票 (3)
- 技術活用 (6)
- 運用・保守 (8)
部署
- システム開発事業部 (33)
- ビジネスソリューション課 (17)
- システムソリューション事業部 (32)
- 流通システム部 (76)
- 産業システム部 (93)
- ソフトウエア開発部 (56)
- Webコンサルティング部 (97)
- 企画開発部 (37)
- 部長インタビュー (3)
月別アーカイブ
- 2012年2月 (6)
- 2012年1月 (18)
- 2011年12月 (19)
- 2011年11月 (22)
- 2011年10月 (29)
- 2011年9月 (28)
- 2011年8月 (5)
- 2011年7月 (18)
- 2011年6月 (15)
- 2011年5月 (21)
- 2011年4月 (8)
- 2011年3月 (12)
- 2011年2月 (12)
- 2011年1月 (13)
- 2010年12月 (18)
- 2010年11月 (19)
- 2010年10月 (19)
- 2010年9月 (21)
- 2010年8月 (17)
- 2010年7月 (21)
- 2010年6月 (22)
- 2010年5月 (14)
- 2010年4月 (12)
- 2010年3月 (13)
- 2010年2月 (9)
- 2010年1月 (12)
- 2009年12月 (7)
- 2009年11月 (6)
- 2009年10月 (8)
- 2009年9月 (7)
- 2009年8月 (3)
- 2009年7月 (1)
- 2009年6月 (3)
- 2009年5月 (1)
- 2009年4月 (1)
- 2009年3月 (8)
- 2009年2月 (10)
- 2009年1月 (1)
- 2008年12月 (1)






VBA / .NET / システムソリューション部
始めにVisualStudioでクラスライブラリプロジェクトを作成します。
プロジェクトが作成されたら、[プロジェクト]→[プロパティ]→[COM相互運用機能の登録]にチェックを入れます。
基本的には、これだけでVBAから使用できるようになります。
以下はサンプルの.NETのコードです。
Imports System.IO Imports System.Runtime.InteropServices <ClassInterface(ClassInterfaceType.None)> _ Public Class COMSample Implements ICOMSample Public Sub Method1( ByVal vsPath As String, ByVal vsMoji As String) Implements ICOMSample.Method1 Using sw As New StreamWriter(vsPath, True) sw.WriteLine(vsMoji) End Using End Sub End ClassクラスにClassInterface属性を付与し、インターフェースを作成することでコード補完機能を使用できます。「ClassInterfaceType.AutoDual」もしくは「ClassInterfaceType.None」を指定します。
「ClassInterfaceType.AutoDual」を指定した場合にはインターフェースが自動で作成されますが、
「ClassInterfaceType.None」を指定した場合には自動で作成されないので、自前でインターフェースを作成し実装します。
プロジェクトをビルドすると、出力先にdllとタイプライブラリファイル(.tlb)が作成されます。
後は、Excelであれば、VisualBasicEditorの[ツール]→[参照設定]で作成されたタイプライブラリファイルを参照します。
参照設定後は通常と同じコードでdllの呼び出しが行えます。
以下はExcelVBAのコードです。
Sub ボタン1_Click() Dim sample As New COMSample.COMSample Call sample.Method1("c:\test.txt", "VBAから呼び出し") End Subちなみに、検証環境は.NETFramework2.0、Excel2003ですが、Excel2000ではエラーになってしまい動作しませんでした。.NETFrameworkのバージョン、Excelのバージョンにより動作しない場合があるようです。
「システム開発ブログ」へのコメントやご意見等ありましたら、ファンページまでお願いします。 Facebook のファンページ
他社のシステムも直します。資産を活かしてシステムリフォーム