Excel VBA質問箱 IV

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

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


19637 / 76732 ←次へ | 前へ→

【62524】inputbox false で 終了しない
質問  チューリップ  - 09/7/28(火) 19:42 -

引用なし
パスワード
   こんばんは、何度も質問してすみません。
今回もよろしくお願いします。

元の表:

       果物名
10001    キウィ
10002    りんご
10003    いちご
10004    ぶどう
10005    バナナ
10003    いちご
10003    いちご
10008    すいか
10002    りんご
10002    りんご
10008    すいか

で、果物名を他のものに書き変えたい時、一気にできるように下記の
コードを作りました。

Sub 品書き換え()
Dim top As Integer
Dim botm As Long
Dim data As Integer
Dim msg1 As String
Dim msg2 As String

Application.ScreenUpdating = False
Sheets("sheet1").Activate
  If ActiveSheet.AutoFilterMode = True Then
    Range("A2").Select
    Selection.AutoFilter
  End If
  
    msg1 = InputBox("修正したい果物を入力してください" _
    & Chr(13) & "先頭の文字のみ入力でかまいません", "果物の検索", , 100, 100)
    If msg1 = "False" Then Exit Sub
    
    With Worksheets("sheet1")
    
      Range("A2").Select
      Selection.AutoFilter Field:=2, _
      Criteria1:=msg1 & "*"
  
    With .AutoFilter.Range
      top = .Offset(1).SpecialCells(xlCellTypeVisible).Row
      
      If Worksheets("sheet1").Range("B" & top).Value = "" Then
        MsgBox "該当するものがありません" _
        & Chr(13) & "再度検索してください", vbOK, "データ"
        Selection.AutoFilter
        Worksheets("sheet1").Select
      
        Exit Sub
    
      Else
        msg2 = InputBox("修正後の果物を入力してください" _
        & Chr(13) & "例)いちご", "果物の修正", , 100, 100)
        If msg2 = "False" Then Exit Sub
       
        botm = Cells(Rows.Count, 1).End(xlUp).Row
        For data = top To botm
           If Worksheets("sheet1").Rows(data).Hidden = False Then
           Range("B" & data).Select
           Selection.Value = msg2
           End If
        Next data
      End If
      
    End With
    End With

End Sub


上記のように書くと、果物名をいれたときは間違いなく動くのですが、
inputboxのキャンセルボタンを押した場合、ムシされて
そのまますべての値を空欄に書き換えてしまいます。

Inputboxは二つ出てきていますが、どちらもキャンセルがムシされます。

どこがおかしいのかご指摘いただけませんでしょうか?
62 hits

【62524】inputbox false で 終了しない チューリップ 09/7/28(火) 19:42 質問
【62525】Re:inputbox false で 終了しない kanabun 09/7/28(火) 20:09 発言
【62528】Re:inputbox false で 終了しない チューリップ 09/7/28(火) 22:04 お礼
【62527】Re:inputbox false で 終了しない kanabun 09/7/28(火) 21:57 発言
【62529】Re:inputbox false で 終了しない チューリップ 09/7/28(火) 22:06 お礼
【62531】Re:inputbox false で 終了しない チューリップ 09/7/28(火) 23:51 質問
【62532】Re:inputbox false で 終了しない kanabun 09/7/29(水) 9:07 発言
【62553】Re:inputbox false で 終了しない チューリップ 09/7/29(水) 18:14 お礼
【62534】Re:inputbox false で 終了しない yoshi 09/7/29(水) 10:51 回答
【62537】Re:inputbox false で 終了しない kanabun 09/7/29(水) 12:07 発言
【62539】Re:inputbox false で 終了しない yoshi 09/7/29(水) 12:48 回答
【62545】Re:inputbox false で 終了しない kanabun 09/7/29(水) 14:44 発言
【62554】Re:inputbox false で 終了しない チューリップ 09/7/29(水) 18:16 お礼

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