Excel VBA質問箱 IV

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

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


6869 / 76732 ←次へ | 前へ→

【75459】Re:L列にデータが入ってたらI列に記入
発言  kanabun  - 14/4/3(木) 19:19 -

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

>>2. いつ実行するのか(自動で実行するのか/ 手動で実行するのか も)
>このマクロ自体は転記用シートから本シートに転記し終わった後に起動させます。
>
>>3. マクロ実行後のシートレイアウト
>
>
>>例 マクロ実行前
>>   I列      L列
>>1  301〜350   350
>>2  201〜250   230
>>3  201〜250   210 ←ここまで前回のデータが入っています。
>>4         240 ←ここから今回転記したデータです。
>>5         300
>>6         100
>>7         250
>>
>Iが空白でL列に文字が入ってたらマクロを起動して
>>
>>例 マクロ実行前
>>   I列      L列
>>1  301〜350   350
>>2  201〜250   230
>>3  201〜250   210
>>4  101〜150   120
>>5  251〜300   300
>>6    〜100   100
>>7  201〜250   250

>このような感じです。
そういうことでしたか。となると、L列の処理を始める行は I列のデータの
最終行のつぎの行から、ということになりますね?

Sub 範囲セット()
  Dim i As Long
  Dim r1 As Range, r2 As Range
  Dim v
  
  With ActiveSheet
    Set r1 = .Cells(.Rows.Count, "I").End(xlUp).Offset(1)
    Set r2 = .Cells(.Rows.Count, "L").End(xlUp)
    v = Excel.Range(r1.Offset(, 3), r2).Value
    ReDim sa(1 To UBound(v), 0) As String
    For i = 1 To UBound(v)
      If Not IsEmpty(v(i, 1)) Then
        Select Case v(i, 1)
         Case Is >= 501: sa(i, 0) = "501 - "
         Case Is >= 451: sa(i, 0) = "451 - 500"
         Case Is >= 401: sa(i, 0) = "401 - 450"
         Case Is >= 351: sa(i, 0) = "351 - 400"
         Case Is >= 301: sa(i, 0) = "301 - 350"
         Case Is >= 251: sa(i, 0) = "251 - 300"
         Case Is >= 201: sa(i, 0) = "201 - 250"
         Case Is >= 151: sa(i, 0) = "151 - 200"
         Case Is >= 101: sa(i, 0) = "101 - 150"
         Case Else:   sa(i, 0) = "  - 100"
        End Select
      End If
    Next
    
    r1.Resize(UBound(v)).Value = sa
  End With
End Sub

↑はI列にデータが入っていないばあいを考慮に入れていません。

1 hits

【75453】L列にデータが入ってたらI列に記入 じん 14/4/3(木) 12:05 質問
【75454】Re:L列にデータが入ってたらI列に記入 kanabun 14/4/3(木) 13:22 発言
【75455】Re:L列にデータが入ってたらI列に記入 じん 14/4/3(木) 16:39 質問
【75456】Re:L列にデータが入ってたらI列に記入 kanabun 14/4/3(木) 17:01 発言
【75457】Re:L列にデータが入ってたらI列に記入 kanabun 14/4/3(木) 17:04 発言
【75458】Re:L列にデータが入ってたらI列に記入 じん 14/4/3(木) 17:55 質問
【75459】Re:L列にデータが入ってたらI列に記入 kanabun 14/4/3(木) 19:19 発言
【75466】Re:L列にデータが入ってたらI列に記入 じん 14/4/7(月) 13:33 質問
【75467】Re:L列にデータが入ってたらI列に記入 kanabun 14/4/7(月) 17:43 発言
【75468】Re:L列にデータが入ってたらI列に記入 kanabun 14/4/8(火) 10:07 発言
【75460】Re:L列にデータが入ってたらI列に記入 kanabun 14/4/4(金) 9:38 発言
【75465】Re:L列にデータが入ってたらI列に記入 じん 14/4/7(月) 11:49 お礼

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