Excel VBA質問箱 IV

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

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


8879 / 76732 ←次へ | 前へ→

【73421】Re:文中の数字を判定するには?
発言  UO3  - 13/1/6(日) 7:35 -

引用なし
パスワード
   ▼コンソール さん:

おはようございます

○○○発生 と nnn件発生 をわけてチェックした方がいいかとは思うのですが
横着に、あわせた形でチェックしています。(まぁ、問題ないとは思いますが)
C列に各インシデント毎の件数をセット。
合計を最後にメッセージで表示します。

正規表現というものを使っていますので、少しわかりにくいかもしれませんが。

Sub Sample()
  Dim re As Object
  Dim ms As Object
  Dim m As Object
  Dim c As Range
  Dim cnt As Long
  Dim d As String
  Dim x As Long
  
  Set re = CreateObject("VBSCript.RegExp")
  re.Pattern = "\d*件{0,1}発生"
  
  Columns("C").ClearContents
  
  For Each c In Range("B1", Range("B" & Rows.Count).End(xlUp))
    If Len(c.Value) > 0 Then
    
      Set ms = re.Execute(c.Value)
      If ms.Count > 0 Then
        d = ms.Item(0)
        x = Val(d)
        If x = 0 Then x = 1
        c.Offset(, 1).Value = x
        cnt = cnt + x
      End If
    
    End If
  Next
  
  MsgBox "発生件数は " & cnt & " 件でした"
  
End Sub
228 hits

【73420】文中の数字を判定するには? コンソール 13/1/6(日) 1:24 質問
【73421】Re:文中の数字を判定するには? UO3 13/1/6(日) 7:35 発言
【73425】Re:文中の数字を判定するには? コンソール 13/1/7(月) 13:15 お礼
【73426】Re:文中の数字を判定するには? UO3 13/1/7(月) 14:08 発言
【73427】Re:文中の数字を判定するには? コンソール 13/1/7(月) 17:34 お礼
【73422】Re:文中の数字を判定するには? UO3 13/1/6(日) 7:45 発言

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