Excel VBA質問箱 IV

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

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


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

【35376】配列からの抽出方法について mitu 06/3/2(木) 14:58 質問[未読]
【35381】Re:配列からの抽出方法について Jaka 06/3/2(木) 16:40 発言[未読]
【35382】Re:配列からの抽出方法について mitu 06/3/2(木) 17:16 発言[未読]
【35384】Re:配列からの抽出方法について Jaka 06/3/2(木) 17:31 発言[未読]

【35376】配列からの抽出方法について
質問  mitu  - 06/3/2(木) 14:58 -

引用なし
パスワード
   Range("A1:Z600")に同種のデータが入力されています。この中から背景色が同じもの(例えば水色)をカラム優先で検索して、データの値をRangeA()として求める方法をご教授願います。

【35381】Re:配列からの抽出方法について
発言  Jaka  - 06/3/2(木) 16:40 -

引用なし
パスワード
   ▼mitu さん:
>データの値をRangeA()として求める方法
この意味が今一翌解りませんが
For i = 1 to 21 ←指折りZまで数えましたが...??
 For ii = 1 To 600
   if Cells(ii,1)のセルの色が水色だったら
    こんな感じに1個1個のセルを参照していくしかないと思います。
   end if 
 Next
Next

【35382】Re:配列からの抽出方法について
発言  mitu  - 06/3/2(木) 17:16 -

引用なし
パスワード
   ▼Jaka さん:
早速のご回答有難うございました。

>>データの値をRangeA()として求める方法
>この意味が今一翌解りませんが

Set RangeA=****
と、一次元の配列として取り込むことができないかと思ったのですが・・・

For〜Nextで、一個づつチェックしていく以外ないのでしょうか

【35384】Re:配列からの抽出方法について
発言  Jaka  - 06/3/2(木) 17:31 -

引用なし
パスワード
   Dim aa As Variant
'2次元配列でしか取り込めません。
aa = Range("A1:A10").Value
For i = 1 to 10
  MsgBox aa(i,1)
Next

でも、↑だとセルの色の判定は無理ですね。

前に
set aa = range("a1:a10")
for each mm in aa

for each mm in range("A1:A10")
とかの速度差をテストしてみましたが、ほとんど同じでした。

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