Excel VBA質問箱 IV

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

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


8681 / 13644 ツリー ←次へ | 前へ→

【31821】RangeプロパティとCellsプロパティを組み合わせて k 05/11/30(水) 15:47 質問[未読]
【31823】Re:RangeプロパティとCellsプロパティを組... Statis 05/11/30(水) 16:04 回答[未読]
【31825】Re:RangeプロパティとCellsプロパティを組... Statis 05/11/30(水) 16:11 回答[未読]
【31831】Re:RangeプロパティとCellsプロパティを組... k 05/11/30(水) 17:22 質問[未読]

【31821】RangeプロパティとCellsプロパティを組み...
質問  k E-MAIL  - 05/11/30(水) 15:47 -

引用なし
パスワード
   Range("H21:H23").Copy
(ここで21行目はCash Totalの入っている行。Cash Totalの入っている行は毎回違う)というのをコードを使って書こうとしています。

Dim CellCounter As Integer
      For CellCounter = 1 To 3000
      If Cells(CellCounter, 1).Value = "Cash Total" Then Range(Cells(CellCounter, 8):Cells(CellCounter + 3, 8)).Copy
      Next CellCounter

となるのかなと思ったのですが
Range(Cells(CellCounter, 8):Cells(CellCounter + 3, 8))の部分が間違っているみたいです。どうやって書けばいいのでしょうか。

【31823】Re:RangeプロパティとCellsプロパティを...
回答  Statis  - 05/11/30(水) 16:04 -

引用なし
パスワード
   ▼k さん:こんにちは
>Range("H21:H23").Copy
>(ここで21行目はCash Totalの入っている行。Cash Totalの入っている行は毎回違う)というのをコードを使って書こうとしています。
>
> Dim CellCounter As Integer
>      For CellCounter = 1 To 3000
>      If Cells(CellCounter, 1).Value = "Cash Total" Then Range(Cells(CellCounter, 8):Cells(CellCounter + 3, 8)).Copy
>      Next CellCounter
>
>となるのかなと思ったのですが
>Range(Cells(CellCounter, 8):Cells(CellCounter + 3, 8))の部分が間違っているみたいです。どうやって書けばいいのでしょうか。


Range(Cells(CellCounter, 8), Cells(CellCounter + 3, 8)).Copy
となります(ヘルプに出ていたと思いますが)

ループしなくてもMATCH関数を使うと処理も早いと思いますが?

【31825】Re:RangeプロパティとCellsプロパティを...
回答  Statis  - 05/11/30(水) 16:11 -

引用なし
パスワード
   こんにちは
Match関数の場合です

Dim CellCounter As Variant
CellCounter = Application.Match("Cash Total", Range("A1:A3000"), 0)
If Not IsError(CellCounter) Then
  Range(Cells(CellCounter, 8), Cells(CellCounter + 3, 8)).Copy
End If

【31831】Re:RangeプロパティとCellsプロパティを...
質問  k E-MAIL  - 05/11/30(水) 17:22 -

引用なし
パスワード
   Statisさん、ありがとうございます。できました。
Range(Cells(CellCounter, 8), Cells(CellCounter + 2, 8))
をRange("H21:H23")の意味だとは知らず、Range("H21,H23")の意味にとっていました。
と、ここで新たな疑問が生じたのですが、
Range("H21,H23")をRangeプロパティとCellsプロパティを組み合わせて表記するとどうなるのでしょうか?

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