Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


7997 / 13645 ツリー ←次へ | 前へ→

【35633】外部sheets,に列を挿入したい、 じ〜じゼミ 06/3/8(水) 20:14 質問[未読]
【35637】Re:外部sheets,に列を挿入したい、 Kein 06/3/8(水) 20:49 回答[未読]
【35638】Re:外部sheets,に列を挿入したい、 ichinose 06/3/8(水) 20:52 発言[未読]

【35633】外部sheets,に列を挿入したい、
質問  じ〜じゼミ  - 06/3/8(水) 20:14 -

引用なし
パスワード
   始めまして。
VBA、1年めの66歳のじ〜じです、外部sheets,に列を挿入したいのですが、
sheets("あ").は、うまく行くのですが、sheets("い").はエラーになります、
どうしたら挿入できますか?教えて下さい。


Sheets("あ").Range("d1:d9000").Insert Shift:=xlToRight
ri = 4
Sheets("い").Range(Cells(1, ri), Cells(9000, ri)).Insert Shift:=xlToRight

【35637】Re:外部sheets,に列を挿入したい、
回答  Kein  - 06/3/8(水) 20:49 -

引用なし
パスワード
   With Sheets("い")
  .Range(.Cells(1, ri), .Cells(9000, ri)).Insert Shift:=xlToRight
End With

とするか

Sheets("い").Activate
Range(Cells(1, ri), Cells(9000, ri)).Insert Shift:=xlToRight

とするか、どちらかならうまくいくはずです。

【35638】Re:外部sheets,に列を挿入したい、
発言  ichinose  - 06/3/8(水) 20:52 -

引用なし
パスワード
   ▼じ〜じゼミ さん:
こんばんは。

>始めまして。
>VBA、1年めの66歳のじ〜じです、外部sheets,に列を挿入したいのですが、
>sheets("あ").は、うまく行くのですが、sheets("い").はエラーになります、
>どうしたら挿入できますか?教えて下さい。
>
>
> Sheets("あ").Range("d1:d9000").Insert Shift:=xlToRight
> ri = 4


これ、最初は殆どの方が躓くところだと思います。
私もそうでした。

With Sheets("い")
 .Range(.Cells(1, ri), .Cells(9000, ri)).Insert Shift:=xlToRight
  End With

としてみてください。

ポイントはCellsプロパティを持っているオブジェクトは、Sheets("い")です。
よって、本来は、

Sheets("い").Range(Sheets("い").Cells(1, ri),Sheets("い").Cells(9000, ri)).Insert Shift:=xlToRight


なんです。
何度も記述するのが大変なので、Wihtを使って省略しました。

7997 / 13645 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free