tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトルExcelで困っています
記事No3378
投稿日: 2006/03/22(Wed) 09:46
投稿者
[OSのVer]:WindowsXP    [VBのVer]:VB.NET   2003

Excelで文字を中央揃えを行うのに"HorizontalAlignment "を使用しています。

xlRange = xlSheet.range("A1:A24")
xlRange.HorizontalAlignment = "xlHAlignCenter"

のように記述しています。実行してみると下のようなエラーが返ってきます
"Range クラスの HorizontalAlignment プロパティを設定できません。"

どのようにしたら改善できるか、アドバイスをお願いします。

[ツリー表示へ]
タイトルRe: Excelで困っています
記事No3379
投稿日: 2006/03/22(Wed) 09:53
投稿者
[OSのVer]:Windows    [VBのVer]:VB.NET   2003

すいません。解決しましたが疑問です。
なぜ、3で設定すると中央揃えになるのかがわかりません。
xlleft、xlcenterなどではないのですか?

[ツリー表示へ]
タイトルRe^2: Excelで困っています
記事No3381
投稿日: 2006/03/22(Wed) 10:35
投稿者YAS
> すいません。解決しましたが疑問です。
> なぜ、3で設定すると中央揃えになるのかがわかりません。
> xlleft、xlcenterなどではないのですか?

「3」って何ですか?
数字で指定しても書式が変わるという意味ですか?

もともとxlLeftやxlCenterは整数で定義してあるのです。
xlLeft = -4131
xlCenter = -4108
などです。これはメニューの表示-オブジェクトブラウザで確認できます。
ただの数字ではあまりに使い勝手が悪いので名前をつけてあるのです。
つまり,xlLeftの代わりに-4131と書いても同じことになります。
「3」が何の定数かはわかりませんが,偶然求めていた書式設定の定数と一致したのではないでしょう
か。

[ツリー表示へ]
タイトルRe: Excelで困っています
記事No3380
投稿日: 2006/03/22(Wed) 10:30
投稿者YAS
猪さん,こんにちは。

> xlRange.HorizontalAlignment = "xlHAlignCenter"

""はいりません。

xlRange.HorizontalAlignment = xlHAlignCenter

[ツリー表示へ]
タイトルRe^2: Excelで困っています
記事No3382
投稿日: 2006/03/22(Wed) 10:37
投稿者
[OSのVer]:Windows    [VBのVer]:VB.NET  
> 猪さん,こんにちは。
>
> > xlRange.HorizontalAlignment = "xlHAlignCenter"
>
> ""はいりません。
>
> xlRange.HorizontalAlignment = xlHAlignCenter

YASさん こんにちは。

""を付けないとエラーが出ます。
"宣言されていません"

宣言をするのでしょうか?

[ツリー表示へ]
タイトルRe^3: Excelで困っています
記事No3383
投稿日: 2006/03/22(Wed) 10:50
投稿者魔界の仮面弁士
> 宣言をするのでしょうか?
Excel のライブラリを「参照設定」すれば、宣言せずとも使えます。
使う時には、xlHAlignCenter の名前空間まで指定してください。
たとえば、「〜 = Excel.XlHAlign.xlHAlignCenter」とか。

参照設定していない場合には、自分で、Const ステートメントを使って定義します。

[ツリー表示へ]
タイトルRe^3: Excelで困っています
記事No3384
投稿日: 2006/03/22(Wed) 10:55
投稿者YAS
>""を付けないとエラーが出ます。
>"宣言されていません"

>宣言をするのでしょうか?

うぁ,ごめんなさい。ろくに確かめないで投稿してしまいました。

xlRange.HorizontalAlignment = Constants.xlCenter

ではどうですか?
(xlHAlignCenterは定義されていないようです。が,xlCenterも同じ値です。)

[ツリー表示へ]
タイトルRe^4: Excelで困っています
記事No3386
投稿日: 2006/03/22(Wed) 11:21
投稿者
[OSのVer]:Windows    [VBのVer]:VB.NET  

魔界の仮面弁士さん、YASさん ありがとうございます。
お二方のアドバイスで出来ました。

>YASさん 

確かに「3」を入力した時に-4×××という数字に自動変換されていました。
「2」を入れると左詰になるみたいです。(余談ですが)

[ツリー表示へ]