プロが教えるわが家の防犯対策術!

お教え下さい 
WindowsXP下でExcel 2002 を使っている者です
 VBA命令で Excelシートを操作したいのですが、桁番号を数値で指定する方法が 判らないので、困っております
 即ち、For Next文で変数iiを使い、是で桁番号を選択したいのですが、これを使うと、
~~~
aa=cstr(ii):bb=Cstr(ii+3)
Columns("aa:bb").Select
Selection.ColumnWidth = ss
~~~
とコーディングをしても、Columns("aa:bb").Select の行で Errメッセ-ジが出て 動きません
 …(Excelでは 桁番号を アルファベット番号で送っているから、当然の事ですが…)
 例えば 数値で枠を指定したい時には、Range(aa,bb)ではなくて、Cell(ii,ii+3) と言う、数値の使えるコマンドを使いますが、同様に、数値を使って桁番号を指定する場合は、何の様なコマンドを使ったら数値での指定が可能なのか、それをお教え下さい
 お願い申し上げます

A 回答 (4件)

    • good
    • 0
この回答へのお礼

tom11様
  大変に有用なサイトを 有難うございました
大助かりです
感謝 申し上げます
akqsp拜

お礼日時:2010/01/20 19:31

>Columns("aa:bb").Select


>何の様なコマンドを使ったら数値での指定が可能なのか
こんな感じかな
Range(Columns(27), Columns(54)).Select
Columns(27).Resize(, 28).Select

>Columns("aa:bb").Select
>Selection.ColumnWidth = ss
列幅を設定するのに何故Selectする必要が?
Range(Columns(27), Columns(54)).ColumnWidth = 4
    • good
    • 0
この回答へのお礼

watabe007様
有難うございました
早速、実行させて戴きます
akqsp拜

お礼日時:2010/01/20 19:21

>>桁番号を数値で指定する方法が 判らないので、困っております



桁番号てなんのこと?


行を指定するには

ROWS(5)


列を指定するには

 columns(3) もしくは Columns("B:D").Select

というような方法です。

>>Columns("aa:bb").Select

というような書き方はできません。

あくまで 列を指定するのであって 表全体を指定できるものではありません。

 表全体を指定するには Range を使用してください。



以上

参考URL:http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/v …
    • good
    • 0
この回答へのお礼

NOBNNN様
ご教示を 有難うございました
早速にも マクロに入れて実行致します
有難うございました
akqsp拜

お礼日時:2010/01/20 19:25

こんばんは。



たぶん、引数が取れないのは、設計上のミスのような気がします。本来、VBAでは、A1スタイルのみというのはヘンですからね。

>Range(Columns(27),Columns(28)).Select
この方法は、同じオブジェクト・スタイルがダブっていますから、あまりコードとしてきれいではありませんね。

こんなスタイルになります。

Dim i As Long
 i = 27
 Columns(i).Resize(, 2).Select
    • good
    • 0
この回答へのお礼

Wendy02様
  ご教示 有難うございました
直ちに 実行してみます
本当に有難うございました
akqsp拜

お礼日時:2010/01/20 19:28

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!