Excel VBA質問箱 IV

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

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


20674 / 76732 ←次へ | 前へ→

【61471】Re:データの検索
発言  りん E-MAIL  - 09/5/12(火) 7:24 -

引用なし
パスワード
   まこすけ さん、おはようございます

>さっそく試してみたのですが、全てE11になってしまいました。
>E22のある行からは、E22にしたいのです。
B列がE**のときに入れ替わるようにしていますが、もしかしてE**出現時のAがカラということがあるのでしょうか。
上のデータで試した時は正しく入っていたので、半角+空白抜き追加してみます。

>>Sub test()
>>  Dim r1 As Range
>>  Dim RR As Long, Rmax As Long, s1 As String
>>  'A列のデータ範囲
>>  With Application.ActiveSheet
>>   Set r1 = Application.Intersect(.Columns("A:A"), .UsedRange)
>>  End With
>>  '
>>  Rmax = r1.Count
>>  ReDim cdat(1 To Rmax, 1 To 1) As Variant
>>  '
>>  'B列にExxが出たら入れ替え?
>>  s1 = "E11" '一応初期値
>>  For RR = 1 To Rmax
    'B列をチェック
    With r1.Cells(RR).Offset(0, 1)
      If StrConv(Left(Trim(.Text), 1), vbNarrow) = "E" Then _
       s1 = StrConv(Trim(.Text), vbNarrow) 'E**なら入替え
    End With
>>   'A列に何か入ってたら
>>   If r1.Cells(RR).Value <> "" Then
>>     'C列に入れる文字列
>>     cdat(RR, 1) = s1
>>   End If
>>  Next
>>  '一括で範囲に渡す。
>>  r1.Offset(0, 2).Value = cdat()
>>  '
>>  Erase cdat
>>  Set r1 = Nothing
>>End Sub

1 hits

【61468】データの検索 まこすけ 09/5/12(火) 0:46 質問
【61469】Re:データの検索 りん 09/5/12(火) 3:37 回答
【61470】Re:データの検索 まこすけ 09/5/12(火) 6:57 発言
【61471】Re:データの検索 りん 09/5/12(火) 7:24 発言
【61476】Re:データの検索 まこすけ 09/5/12(火) 20:01 お礼

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