No.3ベストアンサー
- 回答日時:
先日も似たような回答をしましたが。
(画像なのでコードのコピペが出来ないので簡略)
目的のシート名.Range と Columns(3)・Columns(10) において、目的のシートがアクティブな状態でないのでエラーになっているのでしょ。
例:
Dim n As Long
n = 20
With Worksheets("Sheet2")
.Range(.Columns(3), .Columns(5)).Copy .Columns(n)
End With
End Sub
このようにするとシート2がアクティブな状態でなくても、 "."が With Worksheets("Sheet2") によりシート名を省略している事になるようだと別回答がありましたね。
No.6
- 回答日時:
回答への質問に対して全く返答が無いのでチンプンカンプンの事になってしまうかもしれません。
(もし回答に対して何らかの不満などあって返答したくなくても、何かしらの返答を頂かないと返って不満が有る回答が増えてしまうかもしれませんよ)望んでいる回答は次のうちどれでしょうか?
① なぜエラーが出るか?
⇒ 書き方が許可されていない。
② エラーを出さないようにするにはどうしたらいいのか?
⇒ 何をやりたいのかを言葉で提示して下さい。
例①「1-1」シートの3列目と10列目をどこかにコピーしたい。
例②「1-1」シートの3~10列をどこかにコピーしたい。
例③「商品マスタ」シートの3列目と10列目をどこかにコピーしたい。
③「商品マスタ」シートの指定列を他のシートへコピーする方法が知りたい?
⇒ 何をやりたいのかを言葉で提示して下さい。
例①「商品マスタ」シートの3列目と10列目の最後から4行目までを「1-1」シートにコピーしたい。
「商品マスタ」シートの6列目と8列目の最後から4行目までを「データ」シートにコピーしたい。
「商品マスタ」シートの5列目と13列目の最後から4行目までを「集計」シートにコピーしたい。
④ その他
⇒ 何を望んでいるか?赤の他人でも判る言葉で提示して下さい。
No.5
- 回答日時:
No.3です。
セルの範囲については疑問が既に出ているので別件です。
シート”商品マスタ" がこのコードにどのように関係するのか不明な感じがします。
やっているのは『同じシート内でのコピペ』ですよね?
もしかしてですが”商品マスタ”のシートからそれぞれのシートにコピペしたいのかな?って。
それとも製作途中状態での質問ですかね?
No.2
- 回答日時:
もし、どうしてもご提示のような使い方をする場合や変数を使いたい場合などは以下のユーザー定義関数を組み込んでおくと便利だと思います。
Function CoStr(CoNo As Long) As String
CoStr = StrReverse(Mid(StrReverse(Cells(1, CoNo).Address(False, False)), 2))
CoStr = CoStr & ":" & CoStr
End Function
使い方は「Sheets("1-1").Range(Columns(3), Columns(10)).Copy」の場合は「Sheets("1-1").Range(CoStr(3) & "," & CoStr(10)).Copy」のようにします。
なお、このユーザー定義関数に付きましては機能アップしエラー処理もするものを解説とともに私のHP( https://luckshp.web.fc2.com/ )に「列番号⇒列範囲」として近日中にアップしておきます。興味が有る場合は覗いてみて下さい。
No.1
- 回答日時:
「Range(Columns(3),Columns(10))」という書き方が許可されていない為だと思います。
今回のように固定されているなら「Range("C:C,J:J")」とされるのが簡単だと思います。
他の場所も同様に…
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセル VBAの構文について 2 2023/02/10 18:26
- Excel(エクセル) VBA 特定の列に入っているテキストをコピペ 2 2023/06/14 11:24
- Visual Basic(VBA) VBA初心者です。電話番号の数字の前に0を表示させたいです。 2 2022/12/14 03:58
- その他(Microsoft Office) マクロVBAについて 1 2022/09/06 18:12
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Excel(エクセル) エクセルのマクロでコピー後の貼り付け先を毎回指定したところにしたい 5 2022/08/12 10:47
- Excel(エクセル) シートが違う2枚のエクセルシートにある数値を別シートにコピーしたい(VBA?) 8 2022/03/31 12:24
- Excel(エクセル) エクセルについて教えてください。 3 2023/03/24 08:34
- Excel(エクセル) Excel フィルタ後のコピー貼付けと可視セルの関係について 3 2023/02/07 16:42
- Visual Basic(VBA) 【VBA】写真の縦横比を変えずに貼り付ける 5 2023/06/13 11:42
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
VBA マクロ実行時エラー’1004RangeクラスのPasteSpecialメソッドが失敗
Access(アクセス)
-
ExcelのVBA。public変数の値が消える
Visual Basic(VBA)
-
VBA シートをコピーする際に Copyメソッドは失敗しましたのエラーが出てしまいます
Visual Basic(VBA)
-
-
4
VBAでファイルを開くときにファイル名でワイルドカードを使用したいです
その他(プログラミング・Web制作)
-
5
VBAコード記述に際して、コード全体を自動的にインデント付ける方法
Access(アクセス)
-
6
数式による空白を無視して最終行を取得するマクロ
Excel(エクセル)
-
7
VBA 別シートの同じ日付の欄に値を貼付け
Excel(エクセル)
-
8
エクセルVBAが途中で止まります
Visual Basic(VBA)
-
9
XL:BeforeDoubleClickが動かない
その他(プログラミング・Web制作)
-
10
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
11
初歩的なExcelの質問となります
Excel(エクセル)
-
12
worksheetFunctionクラスのVlookupプロパティを取得できません エラーへの対応
Visual Basic(VBA)
-
13
エクセルVBA 作業後に選択範囲を解除する方法
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
別のシートから値を取得するとき
-
シートが保護されている状態で...
-
VBAで同じシート名のコピー時は...
-
Excelマクロのエラーを解決した...
-
【VBA】指定した検索条件に一致...
-
特定の文字を含むシートだけマ...
-
エクセルVBA Ifでシート名が合...
-
データを製品別に集計
-
ユーザーフォームに入力したデ...
-
エクセルのひとつのシートへの...
-
他のシートのセルの値を引用したい
-
エクセル・マクロ シートの非...
-
【VBA】全ての複数シートから指...
-
C#でExcelのシートを選択する方法
-
エクセルのマクロについて教え...
-
excelのマクロで該当処理できな...
-
VBAで大量のファイルをシート名...
-
VBA コンボボックスのリストを...
-
VBAでオブジェクト変数にsetし...
-
ブック名、シート名を他のモジ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
別のシートから値を取得するとき
-
ユーザーフォームに入力したデ...
-
【ExcelVBA】全シートのセルの...
-
同じ作業を複数のシートに実行...
-
Excelマクロのエラーを解決した...
-
excelのマクロで該当処理できな...
-
ExcelVBA シート名を複数セルか...
-
XL:BeforeDoubleClickが動かない
-
実行時エラー'1004': WorkSheet...
-
VBA 存在しないシートを選...
-
エクセルのマクロについて教え...
-
エクセルのマクロについて教え...
-
ブック名、シート名を他のモジ...
-
ExcelのVBAのマクロで他のシー...
-
【Excel VBA】Worksheets().Act...
-
エクセルのシート名変更で重複...
-
特定の文字を含むシートだけマ...
-
シートが保護されている状態で...
-
Excel マクロについての相談
-
VBA 検索して一致したセル...
おすすめ情報