Excel VBA質問箱 IV

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

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


12006 / 13646 ツリー ←次へ | 前へ→

【12850】変数を使ってセル範囲選択をする方法 くーさん 04/4/17(土) 1:20 質問
【12851】追記です… くーさん 04/4/17(土) 1:23 質問
【12854】Re:変数を使ってセル範囲選択をする方法 アイエネス 04/4/17(土) 4:47 回答
【12877】Re:変数を使ってセル範囲選択をする方法 Asaki 04/4/17(土) 20:56 回答
【12878】Re:変数を使ってセル範囲選択をする方法 くーさん 04/4/17(土) 21:33 お礼
【12894】Re:変数を使ってセル範囲選択をする方法 IROC 04/4/19(月) 11:18 回答

【12850】変数を使ってセル範囲選択をする方法
質問  くーさん  - 04/4/17(土) 1:20 -

引用なし
パスワード
   こんばんは。
多分簡単な質問かと思いますが、お教え下さい。

セルにデータを入力し、例えば【Range("A1:Z100")】を選択したいとします。
しかし、【Z】の【100】は決まっておらず、【200】だったり【300】だったりします。
感じ的には
Dim i As Long
i = Worksheets("Sheet1").Range("Z63556").End(xlUp)
Worksheets("Sheet1").Range("A1:i").Copy Worksheets("Sheet2").Range("A1")
何ですが、もちろんコレでは動いてくれません。

フィルタで検出したデータをSheets2にコピーしたいだけなんです。
分かる方いましたら、お願いします。m(_ _)m

【12851】追記です…
質問  くーさん  - 04/4/17(土) 1:23 -

引用なし
パスワード
   Range("A:Z")
にすればいーじゃん!
とお思いでしょうが、それをすると余計なスペースが下に入ってしまう為、印刷時の時とかに困ります。
入力されてるデータだけを検出する方法をお教え下さい。
お願いします。

【12854】Re:変数を使ってセル範囲選択をする方法
回答  アイエネス  - 04/4/17(土) 4:47 -

引用なし
パスワード
   こんばんは。このコードについてですが、

>Dim i As Long
>i = Worksheets("Sheet1").Range("Z63556").End(xlUp)
>Worksheets("Sheet1").Range("A1:i").Copy Worksheets("Sheet2").Range("A1")

いくつか問題点があります。
まず、
1.変数「i」はstring型にしないといけません
2.Worksheets("Sheet1").Range("Z63556").End(xlUp)では、セルの内容を変数に代入してしまうので、Worksheets("Sheet1").Range("Z63556").End(xlUp).Addressに変更してください
3.変数を使用するときは、Range("A1:i")のように変数と固定値を一緒に""でくくってはいけません。正しくは、Range("A1:" & i)です。もしくは、Range("A1", i)です。でないと変数も固定値と認識してしまいます。

【12877】Re:変数を使ってセル範囲選択をする方法
回答  Asaki  - 04/4/17(土) 20:56 -

引用なし
パスワード
   こんばんは。

ほかには、対象がZ列と決まっているようなので
End() の後ろに .Row
"A1:i" → "A1:Z" & i
でも、良いかと。

【12878】Re:変数を使ってセル範囲選択をする方法
お礼  くーさん  - 04/4/17(土) 21:33 -

引用なし
パスワード
   こんばんは。

出来ました!
やっぱり分かってみると簡単な問題だったのかな?
アイエネスさん、Asakiさん、ありがとうございました。

ちなみに【Long】と【String】の区別は未だに分かっていませんが…。(^^ ;)

【12894】Re:変数を使ってセル範囲選択をする方法
回答  IROC  - 04/4/19(月) 11:18 -

引用なし
パスワード
   >ちなみに【Long】と【String】の区別は未だに分かっていませんが…。(^^ ;)

ヘルプより

長整数型 (Long)

長整数型 (Long) の変数は、32 ビット (4 バイト) の変数です。
-2,147,483,648 〜 2,147,483,647 の範囲の値をとります。


整数型 (Integer)

整数型 (Integer) の変数は、16 ビット (2 バイト) の変数で、
-32,768 〜 32,767 の範囲の値をとります。

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