- 締切済み
エクセル数式
エクセルで、数のカウントをしたいのですが、 卵1 玉ねぎ3 白菜13 ・・・ など、文字が入っている場合は、文字の後ろの個数のみをカウントすることはできるのでしょうか? 教えてください。お願いします
- みんなの回答 (4)
- 専門家の回答
みんなの回答
横着するなら =-LOOKUP(1,-(0&RIGHT(A1,{1,2,3}))) こんな方法も。
- izmlz
- ベストアンサー率55% (67/120)
↓のページがご参考になるのでは? エクセル技道場-数字で始まる部分から区分 http://www2.odn.ne.jp/excel/waza/function.html#SEC26
- noah7150
- ベストアンサー率46% (116/251)
書き漏れ、 先ほどのVBAは後ろから数字以外の文字を発見するところで切っていますが全角の数字も数字とみなされます A33 は A 33 になります。
- noah7150
- ベストアンサー率46% (116/251)
Excelの数式では出来ないと思います。 VBAにて後ろから数字を分離するしかないですね。 カーソル位置から下方向に分離するマクロのサンプルです Sub Macro1() Dim Pos As Long Dim Row As Long Dim Col As Long Dim wStr As String Row = ActiveCell.Row Col = ActiveCell.Column Do While Cells(Row, Col).FormulaR1C1 <> "" wStr = Cells(Row, Col).FormulaR1C1 For Pos = Len(wStr) To 1 Step -1 If IsNumeric(Mid(wStr, Pos, 1)) = False Then Exit For Next If Pos > 0 Then Cells(Row, Col + 1) = Left(wStr, Pos) If Pos < Len(wStr) Then Cells(Row, Col + 2) = Mid(wStr, Pos + 1) Row = Row + 1 Loop End Sub
お礼
回答ありがとうございます。 参考になりました。