Excel VBA質問箱 IV

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

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


8875 / 76732 ←次へ | 前へ→

【73425】Re:文中の数字を判定するには?
お礼  コンソール  - 13/1/7(月) 13:15 -

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

おはようございます。
返信ありがとうございました。

実際に試してみまして、見事に件数がカウントされていました。

>  re.Pattern = "\d*件{0,1}発生"
この部分で{0,1}がどういった表現なのでしょうか。
よく理解できませんでした。

頭の中ではこうすればいいのかなぁとか創造は出来るのですが、
実際に表現してみるという事聞いてくれなくて苦労しています。
今後も勉強に励みたいと思います。
ありがとうございました。


>▼コンソール さん:
>
>おはようございます
>
>○○○発生 と 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

224 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 発言

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