Excel VBA質問箱 IV

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

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


32957 / 76734 ←次へ | 前へ→

【49004】Re:複雑な文字列処理
回答  Kein  - 07/5/20(日) 22:13 -

引用なし
パスワード
   その表が A1 から入力されているとして、こんなコードでできると思います。
表のあるシートを開いて、実行してみてください。

Sub MyCalc()
  Dim C As Range
  Dim CkS As String
  Dim V As Variant
  Dim X As Long
 
  For Each C In Range("B2", Range("B65536").End(xlUp))
   CkS = C.Offset(, 1).Value
   If Right$(C.Value, Len(CkS)) = CkS Then
     C.Offset(, 2).Value = 1
   Else
     For Each V In Split(C.Value, "×")
      If Right$(CStr(V), Len(CkS)) = CkS Then
        X = Val(V)
      Else
        If X > 0 Then X = X * Val(V)
      End If
     Next
     C.Offset(, 2).Value = X: X = 0
   End If
  Next
End Sub

3 hits

【49003】複雑な文字列処理 GHQ 07/5/20(日) 21:13 質問
【49004】Re:複雑な文字列処理 Kein 07/5/20(日) 22:13 回答
【49177】Re:複雑な文字列処理 GHQ 07/5/26(土) 11:29 お礼
【49005】Re:複雑な文字列処理 Hirofumi 07/5/20(日) 22:20 回答
【49006】Re:複雑な文字列処理 Hirofumi 07/5/20(日) 22:55 回答
【49178】Re:複雑な文字列処理 GHQ 07/5/26(土) 11:52 お礼

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