Excel VBA質問箱 IV

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

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


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

【51900】セルの値の大小比較を行いながらの代入方法について カスミ 07/10/10(水) 12:58 質問[未読]
【51903】Re:セルの値の大小比較を行いながらの代入... Jaka 07/10/10(水) 15:42 発言[未読]
【51915】Re:セルの値の大小比較を行いながらの代入... カスミ 07/10/11(木) 2:13 お礼[未読]

【51900】セルの値の大小比較を行いながらの代入方...
質問  カスミ  - 07/10/10(水) 12:58 -

引用なし
パスワード
   エクセルのセルの入力について質問です

Sheet2のB列には数値(行を指定する番号)、E列にはSheet3のC列に代入する値がそれぞれ入っています。

例としては
Sheet2のB2には30、E2には4が入っているとするとSheet3のC30に4が入るようにしたいです。同様にB3,E3、B4,E4・・・にもそれぞれ値が入っており、列単位でそれぞれの処理をしたいと考えています

またここで、たとえば上記の例でB5に30、E5には8が入っていた場合本来ならSheet3のC30に「8」が入りますが、上記のようにB2で既にC30を指定しており、C30には値の4が入っているのでその値と比較して小さい数値を採用する方法教えてください。
(最終的にその列の数値がなくなるまで下の行へ判定が続くとします)


また、「#N/A」の値がB列のたとえばB4などに入っていた場合、Sheet3のD列に上から羅列していくという方法も合せてあればお願いします。

疑問点を大量にまとめてしまいすみません。
どうかよろしくお願いします。

【51903】Re:セルの値の大小比較を行いながらの代...
発言  Jaka  - 07/10/10(水) 15:42 -

引用なし
パスワード
   後は自分で手を加えてください。

Dim i As Long, GY As Variant
i = 1
With Sheets("Sheet2")
  Do
   i = i + 1
   If IsError(.Cells(i, 2).Value) Then
     'ここにエラーだった場合の処理を書く
     MsgBox "エラー"
   ElseIf .Cells(i, 2).Value = "" Then
     Exit Do
   Else
     GY = .Cells(i, 2).Value
     If GY >= 1 And GY <= Rows.Count Then
      If .Cells(i, 5).Value < Sheets("Sheet3").Cells(GY, 3).Value Then
        Sheets("Sheet3").Cells(GY, 3).Value = .Cells(i, 5).Value
      End If
     End If
   End If
  Loop
End With

【51915】Re:セルの値の大小比較を行いながらの代...
お礼  カスミ  - 07/10/11(木) 2:13 -

引用なし
パスワード
   ▼Jaka さん:

お礼が遅れてごめんなさい。
無理なお願いにもかかわらず親切に対応していただいて本当にありがとうございました。

おかげさまでなんとか眠られそうです・・・ (’∀’)

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