• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBAでColumns("aa:bb").Select に替るコマンドを、教えて下さい)

VBAでColumns("aa:bb").Select に替るコマンドを、教えて下さい

このQ&Aのポイント
  • VBA命令でExcelシートを操作する際に、桁番号を数値で指定する方法が分からないというお悩みです。
  • 具体的には、For Next文で変数iiを使い、数値で桁番号を選択したいが、Columns("aa:bb").Select の行でエラーメッセージが出て動かないという問題が発生しています。
  • Excelでは桁番号をアルファベット番号で指定しているため、数値で桁番号を指定する方法を教えていただきたいとのことです。

質問者が選んだベストアンサー

  • ベストアンサー
  • tom11
  • ベストアンサー率53% (134/251)
回答No.1
akqsp
質問者

お礼

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

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

  • watabe007
  • ベストアンサー率62% (476/760)
回答No.4

>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

akqsp
質問者

お礼

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

全文を見る
すると、全ての回答が全文表示されます。
  • NOBNNN
  • ベストアンサー率50% (93/186)
回答No.3

>>桁番号を数値で指定する方法が 判らないので、困っております 桁番号てなんのこと? 行を指定するには ROWS(5) 列を指定するには  columns(3) もしくは Columns("B:D").Select というような方法です。 >>Columns("aa:bb").Select というような書き方はできません。 あくまで 列を指定するのであって 表全体を指定できるものではありません。  表全体を指定するには Range を使用してください。 以上

参考URL:
http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/vba_cell.html#columns
akqsp
質問者

お礼

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

全文を見る
すると、全ての回答が全文表示されます。
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんばんは。 たぶん、引数が取れないのは、設計上のミスのような気がします。本来、VBAでは、A1スタイルのみというのはヘンですからね。 >Range(Columns(27),Columns(28)).Select この方法は、同じオブジェクト・スタイルがダブっていますから、あまりコードとしてきれいではありませんね。 こんなスタイルになります。 Dim i As Long  i = 27  Columns(i).Resize(, 2).Select

akqsp
質問者

お礼

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

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • excelのマクロが上手く動作しません

    excel2013で、シートのレイアウトを整えるマクロを以下のように作成しました。 しかし、いざ他のシートで試すと、そのシートと同時に特定のシートにもなぜかマクロが実行されてしまいます。(恐らく作ったときに使っていたシート) どうしたら今見ているシートだけにマクロを実行することができるでしょうか? ActiveWindow.Zoom = 85 ActiveWindow.Zoom = 70 Columns("A:A").ColumnWidth = 10.13 Columns("A:A").ColumnWidth = 10.63 Columns("B:B").ColumnWidth = 6.63 Columns("D:D").ColumnWidth = 20 Columns("D:D").ColumnWidth = 23.75 Columns("D:D").ColumnWidth = 24.63 Columns("E:E").ColumnWidth = 10.38 Range("E1").Select ActiveCell.FormulaR1C1 = "インボイス金額" ActiveCell.Characters(7, 2).PhoneticCharacters = "キンガク" Columns("F:F").Select Selection.Delete Shift:=xlToLeft Columns("G:G").Select Selection.Delete Shift:=xlToLeft Range("H9").Select Columns("G:G").ColumnWidth = 11.38 Columns("I:K").Select Selection.Delete Shift:=xlToLeft Range("J9").Select Columns("I:I").ColumnWidth = 15 Columns("J:J").ColumnWidth = 9.75 Columns("K:K").ColumnWidth = 9.5 Range("L2").Select Columns("L:L").ColumnWidth = 5.5 Columns("O:O").Select Selection.Delete Shift:=xlToLeft Selection.ColumnWidth = 13.88 Columns("P:P").Select Selection.Delete Shift:=xlToLeft Selection.ColumnWidth = 12.13 Selection.ColumnWidth = 13.25 ActiveWindow.ScrollColumn = 2 ActiveWindow.ScrollColumn = 3 ActiveWindow.ScrollColumn = 4 ActiveWindow.ScrollColumn = 5 ActiveWindow.ScrollColumn = 6 ActiveWindow.ScrollColumn = 7 ActiveWindow.ScrollColumn = 8 ActiveWindow.ScrollColumn = 9 ActiveWindow.ScrollColumn = 10 ActiveWindow.ScrollColumn = 11 ActiveWindow.ScrollColumn = 12 Columns("Q:Q").Select Selection.ColumnWidth = 5.5 Columns("S:S").Select Selection.ColumnWidth = 6.75 Columns("T:T").ColumnWidth = 9.75 Columns("Q:T").Select Range("T1").Activate Selection.Style = "Comma [0]" Columns("U:U").Select Columns("V:V").ColumnWidth = 5.5 Columns("V:V").ColumnWidth = 6 Columns("W:Z").Select Selection.Delete Shift:=xlToLeft Columns("X:Z").Select Selection.Delete Shift:=xlToLeft Range("X10").Select Columns("X:X").ColumnWidth = 12.25 Columns("X:X").ColumnWidth = 11.13 Columns("Y:Y").ColumnWidth = 6.75 Columns("Z:Z").ColumnWidth = 11.63 Columns("AA:AA").ColumnWidth = 6.75 Columns("AB:AB").Select Selection.Delete Shift:=xlToLeft Range("AB2").Select Columns("AB:AB").ColumnWidth = 11 Columns("AD:AO").Select Selection.Delete Shift:=xlToLeft Range("AF14").Select Columns("AD:AD").ColumnWidth = 11 Columns("AE:AE").Select Selection.Delete Shift:=xlToLeft Range("AG7").Select Columns("AE:AE").ColumnWidth = 20.38 Columns("AF:AJ").Select Selection.Delete Shift:=xlToLeft ActiveWindow.ScrollColumn = 21 ActiveWindow.ScrollColumn = 1 Rows("2:2").Select ActiveWindow.FreezePanes = True Range("A2").Select ActiveWorkbook.Worksheets("11").Sort.SortFields.Clear ActiveWorkbook.Worksheets("11").Sort.SortFields.Add Key:=Range("D2:D137"), _ SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal ActiveWorkbook.Worksheets("11").Sort.SortFields.Add Key:=Range("A2:A137"), _ SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal With ActiveWorkbook.Worksheets("11").Sort .SetRange Range("A1:AE137") .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .Apply End With End Sub よろしくお願い致します。

  • vba 離れた列を選択するには?

    Range(Columns(5), Columns(10)).Select これだと5列目から10列目の全てが選択されてしまいます。 荘ではなく、5列目と10列目のみ選択状態にするにはどうすればいいでしょうか? 列はアルファベッドではなく数値で指定したいです。

  • <div id="AA">の時、<form id="BB">内のselect要素などすべての要素をdisableにしたい。

    ▼次のようにページ内のdivタグのidの名前によって、formタグ内の要素をdisableにすることはJava scriptによって可能でしょうか? <div id="AA">のとき、別の場所にある<form id="BB">内のselect要素などすべての要素をdisableにする。 また同時に、id="BB"に指定したスタイルシートの記述を書き換えることは可能でしょうか? 何かよい方法をご存知でしたら教えてください。よろしくお願いいたします。

  • エクセルのブックを開く度にシートの列幅を指定したいのですが・・・

    稚拙な質問お許しください。 エクセルでブックを開いたときに、すでにシートの列幅が任意の幅になっているよう、VBAで「ThisWorkbook」というところに、 Private Sub Workbook_Open() Sheet1.Columns("a:a").Select Selection.ColumnWidth = 7 Sheet1.Columns("b:b").Select Selection.ColumnWidth = 8 Sheet1.Columns("c:c").Select Selection.ColumnWidth = 10 Sheet1.Columns("e:e").Select end sub といった感じで記述したのですが、「F8」キーで処理の過程をみながら追っていくとどうしても、Eの列を過ぎるとEの列だけでなくそれ以降の列も選択してしまい(シート上に表があるのですが、その表の1番最後の列までです。)、任意の幅に指定できないのですが、原因がよくわかりません。どなたか、お力添えください。

  • コマンドプロンプトのバッチファイルについて

    ディレクトリ1に以下のようなファイルがあります。  "file01_05_aa.jpg"  "file01_05_bb.jpg"  "file01_05_cc.jpg"  "file21_04_aa.jpg"  "file21_04_bb.jpg"  "file21_04_cc.jpg"  "file31_03_aa.jpg"  "file31_03_bb.jpg"  "file31_03_cc.jpg" これらのファイル形式は (file)(XX)_(XX)_(XX).jpg これらの中からこの正規表現でヒットするファイルのみ指定した別ディレクトリにコピーしたいです。 file\d\d_(05|03)_(aa|cc)\.jpg Windowsのコマンドプロンプトで実現可能でしょうか。可能であればコマンド列を教えてください。 (cygwinでも良いです。) よろしくお願いいたします。

  • Bシェルのawkコマンドについて

    Bシェルのawkコマンドについてですが、例えばプロンプトから % ls -l hoge.txt | awk '{print $5}' と入力すると、hoge.txtのファイルサイズが出力されますが、同様のことをBシェルの中で行おうと思っています。 下記のように、配列arrayにはスペース区切りで3つのデータが入っており、N番目のデータを取得したいという場合に、Nに変数を使用して取得する方法がわかりません。 #!/bin/sh array="AA BB CC" num=3 # CCを取得したい echo $array | awk '{print $num}' 上記で実行すると、"AA BB CC"のようにすべて出力されてしまいます。awkで出力する箇所を${数値}で指定すればうまくいくのですが、ランダムで決めた数値(1~3)をnumに入れて取得したい場合、このようなことは可能でしょうか。 もし不可能な場合でも、awk以外に何かコマンドがあればご教授願います。なお、作成するのはBシェルになります。

  • アルファベット版00~99になって00に戻るVBA

    excel2010のVBAに付いてお力を貸してください。 例えばA1セルに「AA」と入っていた場合、マクロを一度実行したらA1を「AB」にしたいです。 最後(ZZ)まで行ったら最初(AA)に戻ります。 AA→AB AB→AC AZ→BA BA→BB ZZ→AA AAA→AAB AAZ→ABA ZZZ→AAA のような形です。 条件としましてはA1には1~8桁まで入る可能性があります。 大文字と小文字が入る可能性があります。(Aaなど混ざることはありません。) If Str = "Z" Then  Str = "A" ElseIf Str = "z" Then  Str = "a" Else  Str = Chr(Asc(Str) + 1) End If 一桁ならこんな感じになると思うのですが、繰り上げや、ZZZからAAAに戻すうまい方法が浮かびません。 よろしくお願い致します。

  • VBAでの1列すべての指定方法について。

    こんにちは。 VBAでの1列すべての指定方法についてお伺いします。 Columns(1).Select For Each MyObj In Selection x = MyObj Next というようにA列を検索させていますが、 Select使わないでRange("A:A")と言う形で 指定させようと思っています。 (シートの切り替えをしたくないので。) For Each MyObj In Range("A:A") x = MyObj Next しかし、任意の列に対して数列ごとに飛ばしながら 実行していますので、列の指定の方法は英数ではなく 数値で行いたいです。 For Each MyObj In Columns(1) x = MyObj Next と指定が出来れば良いのですが、上手く動きません。 1⇒Aと変換できる関数でも構いませんので、 良い指定方法あれば、宜しくお願い致します。

  • AES_ENCRYPTとAES_DECRYPTについて

    大変困っています。テーブルに暗号化して書き込むことはできました。ですがテーブルから引っ張ってこようとしたとき問題が起きました。 select * from tableとやると暗号化されたまま出てきました。問題ありません。 次に select * from table where aa = 'bb' としたときに事件が起きました。一致するレコードがありません。どうして? あ、そうか! select aes_decrypt(aa,'111') from table where aa = 'bb'一致するレコードがありません。 な、なぜだ?さっぱりわかりません。 暗号化してしまったレコードはwhere条件を指定できないのでしょうか? もし、知っていらっしゃる方がいましたらどうか教えてください。 是非是非よろしくお願いします。

  • SQLで条件の文字列を含んでいるデータを取得する方法

    SQLにて指定した文字列を含むデータを取得する方法を探しています。 例 テーブル Test 番号   条件 __________ 01    AA 02    BB 03    AA,CC 上記のように、番号と条件という2つのフィールドを持っているテーブルをTestとします。 (1)条件にAAと指定すると、番号01と03が取得。 (2)条件にBBと指定すると、番号02が取得。 (3)条件にAAAと指定すると、一致条件なし。 (1)~(3)のような条件を満たすSQLの構文はありませんでしょうか? ご教授お願いいたします。