Excel VBA質問箱 IV

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

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


18937 / 76738 ←次へ | 前へ→

【63238】Re:End(xlUp) の一つ上を取得したい
発言  かみちゃん  - 09/10/19(月) 16:29 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>「テスト」という単語をB16に書き込んでしまいます。
>目標は、上記の例でいうとB4に書き込みたいのです。

少し、私が勘違いしていたかもしれません。

> B行のデータが入っているセルを上に検索して最も上にあるセル

改めて質問を読んでみると、まず、この意味がよくわかりません。
単純に考えると、1行目から下方向に見て、最初に値が入っているセルの1つ上なのではないでしょうか?

> データのカウントをした変数intNoというのを作って
> これをOffsetの中に入れてみようと思ったのですが、
> イメージとしてはOffset(0 - (intNo + 1))のような感じで
> B4に書き込みができそうですがどのような書き方をしても
> 実行時エラー1004
> アプリケーション定義またはオブジェクト定義のエラーです
> と表示されます。

変数 intNo の値によります。
たとえば、
End(xlUp)の結果がB4セルだった場合、intNoが2より大きい場合は、そのようなエラーになります。
たとえば、intNoが3の場合は、
Range("B4").Offset(0 - (intNo + 1))
では、
Range("B4").Offset(-4)
となり、B4より4行上は、存在しないからです。

なお、
Range("B4").Offset(intNo)
ではなぜできるかは、
intNo 行の下になるからです。
ただし、
Range("B65533").Offset(intNo)
では、intNoが4の場合、B65533の4行下は、Excel2003以下の場合存在しないので、
同様のエラーになります。

4 hits

【63234】End(xlUp) の一つ上を取得したい りょう 09/10/19(月) 12:02 質問
【63235】Re:End(xlUp) の一つ上を取得したい かみちゃん 09/10/19(月) 12:11 発言
【63236】Re:End(xlUp) の一つ上を取得したい りょう 09/10/19(月) 16:10 質問
【63238】Re:End(xlUp) の一つ上を取得したい かみちゃん 09/10/19(月) 16:29 発言
【63241】Re:End(xlUp) の一つ上を取得したい 一言居士 09/10/19(月) 17:04 発言
【63249】Re:End(xlUp) の一つ上を取得したい りょう 09/10/19(月) 22:41 お礼
【63248】Re:End(xlUp) の一つ上を取得したい りょう 09/10/19(月) 22:38 お礼

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