
No.3ベストアンサー
- 回答日時:
こんばんは。
私も、前々から、これに関しては疑問に感じていました。
それは、VBAのワークシートの引数の元のソース部分は、数値処理なのに、Columns は、文字によって入れることに成り立ちます。確かに、変数として扱うには、"A:C" は上手くないのは同感です。Columnsの引数は、index で、Rows との整合性がなくてはならないのに、その統一が取れていません。これは、設計上のミスかもしれません。
最初に、test1 の場合。
Sub test1()
With ActiveSheet
.Range(.Columns(1), .Columns(3)).Select
End With
End Sub
このような形は、一般的ではありません。それは、Rangeの内部の引数にオブジェクトを入れるということは、納まりがよくないからです。基本的に、親オブジェクトから、プロパティとして一続きなっていなければなりません。
Sub test2()
With ActiveSheet
.Cells(1, 1).Resize(, 3).EntireColumn.Select
'Cells(1, 1).Resize(, 3).ColumnWidth = 20 '列幅を20にする
End With
End Sub
そこで、数値処理する場合は、こういう形にするしかないのかなって思います。
No.2
- 回答日時:
やってみると
Columnsの複数列指定の場合A:Cのようにすべきで1:3はエラーです。
1つの列の場合は数字指定が出来ます。
Application.ReferenceStyle = xlR1C1が関係してないかと思って
やってみましたが、関係ないようです。
不統一な感じで、理由不明ですが、やむを得ません。
Sub test01()
Columns("A:C").ColumnWidth = 15
End Sub
Sub test02()
With Application
.ReferenceStyle = xlR1C1
End With
Columns(4).Select
Selection.ColumnWidth = 10
End Sub
Sub test03()
With Application
.ReferenceStyle = xlA1
End With
Columns(6).Select
Selection.ColumnWidth = 10
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Activesheet.Pasteで困っています 1 2023/01/22 07:41
- Visual Basic(VBA) エクセルのマクロで 1 2022/04/09 06:44
- Excel(エクセル) Excel 特定セルの数値を参照したセルの0表示が空白にならないのはどうしてか? 3 2022/04/28 22:23
- Access(アクセス) エクセルのマクロについて教えてください。 2 2023/02/04 14:20
- Visual Basic(VBA) オブジェクトが見つかりません 1 2023/06/24 19:43
- C言語・C++・C# c言語 配列とポインタについて 3 2023/02/09 22:53
- Visual Basic(VBA) VBA 「,」・空白・カタカナ等の複数条件のマクロ 2 2023/08/23 11:57
- Visual Basic(VBA) ExcelVBAで、型が一致しませんのエラーについて 3 2023/06/20 09:51
- その他(コンピューター・テクノロジー) 【Tableau Desktop】文字列から8桁の数字を日付型(yyyyMMdd)として取得 1 2023/07/31 10:17
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/25 16:07
このQ&Aを見た人はこんなQ&Aも見ています
-
今年はじめたいことは?
今年はこれをはじめたい!ということを教えてください!
-
歳とったな〜〜と思ったことは?
歳とったな〜〜〜、老いたな〜〜と思った具体的な瞬間はありますか?
-
最強の防寒、あったか術を教えてください!
とっても寒がりなのですが、冬に皆さんがされている最強の防寒、あったか術が知りたいです!
-
この人頭いいなと思ったエピソード
一緒にいたときに「この人頭いいな」と思ったエピソードを教えてください
-
14歳の自分に衝撃の事実を告げてください
タイムマシンで14歳の自分のところに現れた未来のあなた。 衝撃的な事実を告げて自分に驚かせるとしたら何を告げますか?
-
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
-
4
エクセルVBAで5行目からオートフィルタモードに設定したいたい
Excel(エクセル)
-
5
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
6
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
-
7
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
8
VBAでループ内で使う変数名を可変にできないか。
Visual Basic(VBA)
-
9
worksheetFunctionクラスのVlookupプロパティを取得できません エラーへの対応
Visual Basic(VBA)
-
10
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
11
VBA 変数名に変数を使用したい。
Visual Basic(VBA)
-
12
複数の条件に合う行番号を取得するには
その他(Microsoft Office)
-
13
Rangeメソッドは失敗しました。globalオブジェクトについて
Excel(エクセル)
-
14
VBAでの Replace関数で、ワイルドカードは使えないのでしょうか?
Visual Basic(VBA)
-
15
VBAでワークシートを引数としてサンプル関数に渡したい
Visual Basic(VBA)
-
16
vba クリップボードクリアについて教えてください
その他(プログラミング・Web制作)
-
17
Excelの条件付き書式設定の太い罫線
Excel(エクセル)
-
18
Enterキーでマクロを起動さす。
その他(ソフトウェア)
-
19
VBA シートのボタン名を変更したい
Visual Basic(VBA)
-
20
ExcelVBAのユーザーフォームの中に線を引きたい
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
worksheetFunctionクラスのVloo...
-
実行時エラー 3265「要求された...
-
「Columns("A:C")」の列文字を...
-
エクセルのVBAの標準モジュール...
-
オブジェクトが見つかりません
-
[VBA]CDOメッセージ送信エラー
-
オブジェクト変数の取得について
-
ADO 「NEW」の意味、必要性
-
Excelでフィルタをかけると警告...
-
vbsのFolderExistsで部分一致を...
-
Excel VBAでIEにアクセスするプ...
-
Excel VBAでWordの複数ファイル...
-
【VB】【エクセル操作】 SaveAs...
-
ユーザー定義関数について
-
VBAで既に開いている別アプリケ...
-
VBScriptからDLL参照設定したい
-
CreateObjectとGetObjectの違い
-
コンパイルエラーの対処がわか...
-
VBAについてです。 初心者です...
-
VBAで別のシートに図形描画
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
worksheetFunctionクラスのVloo...
-
「Columns("A:C")」の列文字を...
-
エクセルのVBAの標準モジュール...
-
VBAで既に開いている別アプリケ...
-
実行時エラー 3265「要求された...
-
Excelでフィルタをかけると警告...
-
上下の位置揃えについて
-
エクセルマクロエラー「'Cells'...
-
VBAで Set wb = Sheets(1).Cop...
-
エクセルVBAでcode128のバー...
-
テキストボックス中の文字列の...
-
EXCEL VBA オートシェイプナン...
-
AccessVBAで「dim dbs as datab...
-
findメソッドの変数について
-
ある文字列が全て数字であるか...
-
VBAからPDFファイルにパスワー...
-
VBScriptでファイルの日時順(降...
-
エクセルVBAで配列内に空白デー...
-
PowerPointVBAでスライドマスタ...
-
VBAで作成するメール(開封確認...
おすすめ情報