私のセルA1には02020などの文字列が入ります。この文字列をチェックし、等しくない最初の文字の値を返す式が必要です上記の例では2を返します。Excel - 文字列内の0でない最初の文字を見つける
ありがとうございました。
私のセルA1には02020などの文字列が入ります。この文字列をチェックし、等しくない最初の文字の値を返す式が必要です上記の例では2を返します。Excel - 文字列内の0でない最初の文字を見つける
ありがとうございました。
唯一の重要な問題は、先頭のゼロが文字列内の最初の文字である可能性があります。または、先行するゼロの数値の書式設定の結果である可能性があります。解決策は、両方のケースをカバーする必要があります。これは、先行ゼロは、フォーマットの工夫されている場合でも動作するはず
Public Function DropTheZeros(r As Range) As Variant
Dim s As String, i As Long
s = r(1).Text
For i = 1 To Len(s)
DropTheZeros = Mid(s, i, 1)
If DropTheZeros <> "0" Then Exit Function
Next i
DropTheZeros = ""
End Function
:
は、このユーザー定義関数を考えてみましょう。
あるいは:
VBAなしPublic Function DropTheZeros2(r As Range) As Variant
DropTheZeros2 = Left(Replace(r(1).Text, "0", ""), 1)
End Function
あるいは:
=LEFT(SUBSTITUTE(TEXT(A1,"@"),"0",""),1)
ありがとうございました:)ありがとうございました – codetemplar
(コメントごとに)あなたは '、1'を必要としません – Jeeped
@Jeeped私はしませんでしただと、わかる................................... –
数式を表示します。 – findwindow
私は数式を持っていない、数式は私が求めているものです。 – codetemplar
SOはExcelサービスではありません。 – findwindow