解決済みの質問
VisualBasic2008を使ってExcel2003を制御するプログラムを作っています。
VisualBasic2008を使ってExcel2003を制御するプログラムを作っています。
具体的には、特定のセル範囲に対して「セルの書式設定」-「配置」で「文字の位置」のところを「横位置」を中央、「縦位置」を下詰めにしたいと思っています。
Excelでマクロを作って確認してみたところ、
Range("B2:G17").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
となりました。これをVisualBasic2008で表現したいのですが、どのようにすればよいのでしょうか。特に「HorizontalAlignment」と「xlCenter」、「VerticalAlignment」と「xlBottom」の部分をどうコーディングすればよいのかわからないのですが、ご存知の方教えていただけないでしょうか。
作成中のプログラムを一部抜粋したのが以下になります。
コメントで「特定のセル範囲を選択して、セルの書式設定」のところに挿入したいとおもっています。
'Excel起動
oXls = New Microsoft.Office.Interop.Excel.Application()
oXls.Visible = True
wdXls = oXls.Workbooks.Open("C:\test\test.xls")
'特定のセル範囲を選択して、セルの書式設定
'保存
wdXls.SaveAs(Filename:=hozon)
wdXls.Close()
'メモリ開放
System.Runtime.InteropServices.Marshal.ReleaseComObject(wdXls)
wdXls = Nothing
'Excel終了
oXls.Quit()
'メモリ開放
System.Runtime.InteropServices.Marshal.ReleaseComObject(oXls)
oXls = Nothing
何卒よろしくお願いします。
-
- 質問日時:
- 2010/3/9 15:47:54
-
- 解決日時:
- 2010/3/10 11:47:17
-
- 回答数:
- 3
-
- お礼:
- 知恵コイン
- 50枚
-
- 閲覧数:
- 304
-
- ソーシャルブックマークへ投稿:
- Yahoo!ブックマークへ投稿
- はてなブックマークへ投稿
- (ソーシャルブックマークとは)
ベストアンサーに選ばれた回答
ttkai00さん
VBA ではなくて、VB2008 から PIA を使ったアクセスですよね。
でしたら、Constants 列挙型に定義されている値を使う方がよいです。
http://msdn.microsoft.com/ja-jp/library/microsoft.office.interop.ex...
Constants.xlCenter とか Constants.xlBottom とか。
また、本題とは異なりますが、
oXls.Workbooks.Open("C:\test\test.xls")
ここで、Workbooks の暗黙の参照が残ってしまいます。Workbooks も変数に入れて ReleaseComObject してあげてください。
- 違反報告
- 回答日時:2010/3/9 17:29:09
- この質問・回答は役に立ちましたか?
- 役に立った!
お役立ち度:1人が役に立つと評価しています。
ベストアンサー以外の回答
(2件中1〜2件)
- 並べ替え:回答日時の
- 新しい順
- |
- 古い順
こんにちは。
Range("B2:G17").Select
With Selection
を
With wdXls.sheets(1).Range("B2:G17")
とする。
「参照設定」が出来るのでしたら、xlBottomは、自動変換できますが、
その方法を使わない場合、エクセルでオブジェクトブラウザーで、検索したら、設定の数値が表示しますので、
そのまま使ってもいいです。
- 違反報告
- 回答日時:2010/3/9 17:25:18
組み込み定数一覧
http://park18.wakwak.com/~achiwa/magic/tips/08ox/002.html
で
xlBottom -4107
とありますから
.VerticalAlignment = xlBottom
は
.VerticalAlignment = -4107
となるのでは?
- 違反報告
- 回答日時:2010/3/9 17:20:05
あなたにおすすめの解決済みの質問
- VisualBasic2008でのファイルの保存について…VisualBasic2008でプロジェクトを作成したのですが、それを保存するといつも拡張子が.vbや、.resxにしかなりません。そのために毎回そのプロジェクトを実行するためにVi
- VisualBasic2008を使ってWord2003のドキュメントを制御したいです。。やりたいことは、Wordで作成した表を段落記号で区切って解除したいのです。 Wordのマクロを使えば簡単にできるのはわかるのですが、現在VisualBa
- VBA セルの挿入&結合B列の8列目からデータが入力されています。一列を2列に分割して、ある部分は結合してある部分は2段のままにしたいのです。詳細な説明までは省きますが、実際にソースを作成したら変な動きになってしまい...
質問した人からのコメント