![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
No.3ベストアンサー
- 回答日時:
数値がInteger型で足りるのであれば変換関数「CInt」を使い変換するのがいいのではないでしょうか?
文字列が入ってたらエラーになるのでIsNumericで数値型かどうか判断してエラー回避をちゃんとして下さい。
If (IsNumeric("0015")) Then
intVal = CInt("0015")
End If
こんな具合に。
No.8
- 回答日時:
VBのバージョンは6.0で良いですか?
Dim strSuji As String
strSuji = "001"
の様な場合、
Format$(strSuji, "#")
で求めれます。
Format よりも Format$ の方が、引数と返値共にStringなので、曖昧性を排除でき、処理も少し速いです。
No.7
- 回答日時:
文字列で求めると解釈して
Function a001(a)
b = Format(Val(a), "#")
a001 = b
End Function
Sub test01()
MsgBox a001("02021")
End Sub
数値以外の引数を指定すると、スペースが返ります。
初歩的な回答ですが。
No.6
- 回答日時:
私もvalを使うのが簡単でいいと思うけど、別のアプローチ
-----------------------------------------------------
Dim a, oRE
a = "001"
Set oRE = CreateObject("VBScript.RegExp") '正規表現オブジェクトを使う
oRE.Pattern = "^0+" '先頭からの連続する0にマッチさせる
a = oRE.Replace(a, "") '先に指定したパターンにマッチする部分を取り除く
No.5
- 回答日時:
当初の質問に対する回答とは異なりますが、ご容赦ください。
回答の中に、Val関数を使用するという回答がありますが、Val関数は型を特定しないことから変換に有効的に思われがちですが、逆に言うとVB任せの変換になるので、コーディング的にはあまり良くありません。
その値がどういう性質のものなのかを考慮し、それに見合った型の変数に格納するのが望ましいと思います。
従って、No.3さんの回答のように、値をチェックして、No.2さん、No.3さんのように然るべき型に変換すべく、CInt関数やFormat関数を用いることが良いと思います。
No.4
- 回答日時:
0を除いた結果を数値として使いたいのか、文字列として使いたいのかがわからないのでなんともいえませんが...、私もNO1のVALがいちばんわかりやすいと思います。
valは引数を数値化するものなので、"001"という文字列は「1」という数値に変換されます。
具体的な使い方はこんな感じです。
↓
Dim mozi as string
Dim suti as intejer
mozi = "001"
suti = val(mozi) → suti=1
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセル関数の変わった使い方 3 2022/05/13 17:12
- Excel(エクセル) マクロでボタンにつける名前がどこに設定されているかわからないケースがありました。 1 2023/06/19 19:37
- Visual Basic(VBA) エクセルVBAについて 2 2023/01/31 16:21
- Excel(エクセル) 関数を用いて表示したセルの内容を、見えている形でコピーする方法 2 2022/09/14 16:36
- Excel(エクセル) LEFT関数で文字数を指定しないで取りだす方法 7 2023/06/30 09:49
- SQL Server SQLについて質問です。 a表がありその表には従業員名を保存するname列があります。 LIKE演算 1 2022/05/17 17:49
- Visual Basic(VBA) サブフォルダ(データ)にある複数の.xlsxファイルのSheet3のA2セルの値で01から左側をB2 2 2022/08/14 15:46
- Excel(エクセル) Excel 文字列を結合するときに重複をなくしたい 関数・VBA 2 2022/12/12 10:40
- JavaScript javascriptで文字分割は、 split() などメソッド不要??? 4 2023/02/06 22:50
- PHP PHPの構文で間違えが分からない 5 2022/07/11 16:38
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C#でListとDictionaryの判別方法
-
VB6.0の「vbFromUnicode」はVB....
-
【C++/CLI】int型からString型...
-
textbox.textやlabel.captionの...
-
VBA、nullをemptyに変換
-
n進数の値を10進数の値に変換す...
-
Date型からString型へ変換...
-
C++ 文字列変数と16進数の比較
-
16進コード文字列を文字列に変換
-
VB6.0 String型→Long型変換方法...
-
10進数を2進数
-
VBでUTF-8で出力
-
Boolean型変数の値を反転する方法
-
StretchBltを使ったミラーリング
-
文字列の足し算
-
VBA 変数名に変数を使用したい。
-
XMLでデータとして画像を指定す...
-
テキストファイルのフィールド...
-
ACCESSで日別集計をする場合
-
「Nullの使い方が不正です」の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VB.NETで1→A、2→B、26→Z、27→AA...
-
WORD型をCString型に変換する方法
-
16進をASCIIコードに変換する...
-
VB6.0の「vbFromUnicode」はVB....
-
C++ 文字列変数と16進数の比較
-
バイト型のデータをLong型に変換
-
16進コード文字列を文字列に変換
-
VC++ std::stringからLPCWSTRに...
-
10進数を2進数
-
2の補数の計算について
-
数字→漢数字変換
-
Boolean型変数の値を反転する方法
-
RGBとHSLを相互変換する際の端...
-
【C++/CLI】int型からString型...
-
textbox.textやlabel.captionの...
-
C#でListとDictionaryの判別方法
-
vb6の桁数指定
-
補数について教えてください!
-
C言語のGPS問題が分かりません。
-
Pythonの指数表記について
おすすめ情報