変数のデータ型・宣言(Dim ステートメント)
2016/02/05
変数の宣言
一般的な方法
【書式】
Dim varname [ As type, …… ]
Dim varname [ As type, …… ]
- varname ・・・ 変数名
- type ・・・ データ型(Integer, Long, Date, String 等)
「type」は省略可能。省略した場合は、バリアント型(Variant)になります。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
'整数型 Dim num As Integer 'xnum:長整数型、ynum:倍精度浮動小数点型 Dim xnum As long, ynum As Double 'A、B:バリアント型、C:可変長文字列型 Dim A, B, C As String '固定長文字列型 Dim varstr As String * 10 |
省略記号を使用する
【書式】
Dim varname<ellipsis>
Dim varname<ellipsis>
- varname ・・・ 変数名
- <ellipsis>・・・ 省略記号(% & @ $ 等)
|
1 2 3 4 5 6 7 8 |
'num:整数型、str:可変長文字列型 Dim num%, str$ 'kingaku:通貨型 Dim kingaku@ |
データ型一覧
| データ型 | 意味 | サイズ・データの内容 | 省略記号 |
| Boolean | ブール型 | [2バイト] true(真)-1 / false(偽)0 | |
| Byte | バイト型 | [1バイト] 正の整数(0~255) | |
| Integer | 整数型 | [2バイト] 整数(-32768~32767) | % |
| Long | 長整数型 | [4バイト] 整数(-2147483648~2147483647) | & |
| Currency | 通貨型 | [8バイト] -922,337,203,685,477.5808 ~ 922,337,203,685,477.5807の固定小数点数 | @ |
| Single | 単精度浮動 小数点数型 |
[4バイト] -3.402823E38 ~ -1.401298E-45 (負の値) 1.401298E-45 ~ 3.402823E38 (正の値) |
! |
| Double | 倍精度浮動 小数点数型 |
[8バイト] -1.79769313486232E308 ~ -4.94065645841247E-324 (負の値) 4.94065645841247E-324 ~ 1.79769313486232E308 (正の値) |
# |
| Date | 日付型 | [8バイト] 西暦100年1月1日0:00:00 ~ 西暦9999年12月31日23:59:59 |
|
| String | 可変長 文字列型 |
任意の長さの文字列 | $ |
| String * length | 固定長 文字列型 |
長さ length の文字列 | |
| Object | オブジェクト型 | [4バイト] オブジェクト | |
| Variant | バリアント型 | ||
| Type | ユーザー定義型 | Type ステートメントで定義されたデータ型 |
関連記事
-
-
VBA で正規表現を使う(RegExp オブジェクト)
RegExp オブジェクト VBA で正規表現を使うには、VBScript のR …
-
-
ポイント単位の値に変換(CentimetersToPoints,InchesToPoints)
CentimetersToPoints メソッド センチメートル単位の値をポイン …
-
-
指定した数のスペースを挿入する(Spc 関数)
指定した数のスペースを挿入 指定した数のスペースを挿入するには、Spc 関数を使 …
-
-
日付時刻:年・月・日を取得(Year、Month、Day 関数)
日付から年・月・日を取得する関数 【書式】 date_year = Year ( …
-
-
日付時刻:日付時刻データを計算( DateAdd 関数 )
DateAdd 関数(日付・時刻の値を加算・減算結果を取得) 【書式】 resu …
-
-
書式を変換(Format 関数)
Format 関数の使い方 【書式】 result = Format ( exp …
-
-
セルのデータを区切り文字で複数のセルに分割する(TextToColumns メソッド)
TextToColumns メソッド TextToColumns メソッドを使用 …
-
-
VBA で正規表現を使う(RegExp オブジェクトのメソッド)
RegExp オブジェクトのメソッド RegExp オブジェクトの詳細に関しては …
-
-
日付時刻:経過時間を取得( Timer 関数 )
Timer 関数の使い方 【書式】 result = Timer () 【戻り値 …
-
-
ある数値が、複数の範囲のどの範囲に含まれるかを示す文字列を返す(Partition 関数)
Partition 関数 の使い方 Partition 関数は、ある数値が、区切 …
- PREV
- VBAの変数宣言
- NEXT
- メッセージボックスを表示(MsgBox関数)
Comment
VBA初心者です
インプットBOXにユーザーが入力した日付をセルA1に日付として出力したいのですが、
下記コードでは 型が一致しません というメッセージが帰ってきてうまくいきません。
どこがいけないのかいくら考えてもわかりません。どなたかアドバイスいただけますよう、
お願い申し上げます。
Sub Auto_Open()
Dim ans As Date
ans = InputBox(“顧客がファイルを作成した年月日をYYYY/MM/DD形式で入力してください”, “”)
If ans “” Then
Sheets(“納期回答調査最終”).Range(“A1”).Date = ans
End If
End Sub
コメントありがとうございます
こんな感じでどうでしょうか?
Sub Auto_Open()
End Sub