@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

VC2005 Excel操作について

投稿者投稿内容
ken
大ベテラン
会議室デビュー日: 2006/03/29
投稿数: 121
お住まい・勤務地: 東京
投稿日時: 2006-06-08 10:35
OS:XP
VC2005 C++/CLI
で開発しています。

エクセル操作で、あるセルに対して、線を引きたいのですが、
どのようにすればよいのでしょうか??
sheet->UsedRange->Borders->LineStyle
とした場合は、セル全体になってしまうのですが、
例えば、下線だけや、一部分だけに線を引く場合は、
どのように、すればよいのでしょうか?

よろしく御願いいたします。
mio
ぬし
会議室デビュー日: 2005/08/25
投稿数: 734
お住まい・勤務地: 神奈川県
投稿日時: 2006-06-08 10:50
Excelでマクロ記録して、Visual Basic Editorを開いてみるのが良いと思います。
ken
大ベテラン
会議室デビュー日: 2006/03/29
投稿数: 121
お住まい・勤務地: 東京
投稿日時: 2006-06-08 10:58
mioさん、
レスありがとうございます。

すみません、言葉が足りなかったようです。
あるアプリケーションで、エクセルに対して操作を
したいという意味です。。
で、C#などでは、コードのサンプル見たいのが
あったのですが、C++/CLIだと、なかなか見つかりませんで、
書き込みしてみました。

よろしく御願いいたします。
Blue
大ベテラン
会議室デビュー日: 2005/09/12
投稿数: 230
お住まい・勤務地: 知っている人は知っている
投稿日時: 2006-06-08 11:13
mioさんのアドバイスは適切だと思いますが。

結局使うのはExcelのオブジェクトになるわけで、
どの言語で書こうが似たようなコードになるわけです。
(○○というオブジェクトの△△△というプロパティを設定するとか)

で、なぜExcelVBAでまずマクロの登録をしてみると良いかということなんですが、
視野的にこのような動作はこんなコードになるというのがわかりやすいからです。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-06-08 11:15
こんにちは、ken さん。

引用:

kenさんの書き込み (2006-06-08 10:35) より:

sheet->UsedRange->Borders->LineStyle
とした場合は、セル全体になってしまうのですが、


UsedRange な上に、Borders で位置を指定していないからそうなりますね。

引用:

例えば、下線だけや、一部分だけに線を引く場合は、
どのように、すればよいのでしょうか?


Excel::Range のインスタンスから、Excel::Borders を取り出します。
Excel::Borders のインスタンスから、Excel::Border を取り出します。
Excel::Border のインスタンスから LineStyle プロパティを変更します。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
ken
大ベテラン
会議室デビュー日: 2006/03/29
投稿数: 121
お住まい・勤務地: 東京
投稿日時: 2006-06-08 11:38
Blueさん、
レスありがとうございます。

引用:

結局使うのはExcelのオブジェクトになるわけで、
どの言語で書こうが似たようなコードになるわけです。
(○○というオブジェクトの△△△というプロパティを設定するとか)



似たようなコードだとは、思ったのですが、
調べていたのですが、うまく行きませんでした。

引用:

で、なぜExcelVBAでまずマクロの登録をしてみると良いかということなんですが、
視野的にこのような動作はこんなコードになるというのがわかりやすいからです。



VBAは、使った事がありません。。
何か、いいサンプル、サイトがあれば教えてください。
ありがとうございました。

ken
大ベテラン
会議室デビュー日: 2006/03/29
投稿数: 121
お住まい・勤務地: 東京
投稿日時: 2006-06-08 11:38
Blueさん、
レスありがとうございます。

引用:

結局使うのはExcelのオブジェクトになるわけで、
どの言語で書こうが似たようなコードになるわけです。
(○○というオブジェクトの△△△というプロパティを設定するとか)



似たようなコードだとは、思ったのですが、
調べていたのですが、うまく行きませんでした。

引用:

で、なぜExcelVBAでまずマクロの登録をしてみると良いかということなんですが、
視野的にこのような動作はこんなコードになるというのがわかりやすいからです。



VBAは、使った事がありません。。
何か、いいサンプル、サイトがあれば教えてください。
ありがとうございました。

ken
大ベテラン
会議室デビュー日: 2006/03/29
投稿数: 121
お住まい・勤務地: 東京
投稿日時: 2006-06-08 11:42
じゃんぬねっとさん、
レスありがとうございます。

引用:

UsedRange な上に、Borders で位置を指定していないからそうなりますね。



UsedRangeとRangeは、どのように違うのでしょうか?

引用:

Excel::Range のインスタンスから、Excel::Borders を取り出します。
Excel::Borders のインスタンスから、Excel::Border を取り出します。
Excel::Border のインスタンスから LineStyle プロパティを変更します。



こちらで、試してみようかと思います。

スキルアップ/キャリアアップ(JOB@IT)