よく使う
[Ctrl]+[1] セルの書式設定
[Ctrl]+[F2] 印刷プレビュー※2007以降
[Alt]+[F11] VBE表示
[Ctrl]+[PgUp]or[PgDn] 隣のシート表示
[Ctrl]+[上]or[下]or[左]or[右] データが途切れる場所までジャンプ
[Ctrl]+[:] 現在時刻
[Ctrl]+[;] 現在日付
よく使う
[Ctrl]+[1] セルの書式設定
[Ctrl]+[F2] 印刷プレビュー※2007以降
[Alt]+[F11] VBE表示
[Ctrl]+[PgUp]or[PgDn] 隣のシート表示
[Ctrl]+[上]or[下]or[左]or[右] データが途切れる場所までジャンプ
[Ctrl]+[:] 現在時刻
[Ctrl]+[;] 現在日付
Dim ary_ver As Variant, i As Integer ary_ver = Split("123,456,789", ",") For i = LBound(ary_ver) To UBound(ary_ver) '処理 Next
Dim ver As String
ver = Application.Version
※「12.0」とか得られるので、文字列で取得する。
ちなみに12.0はExcel2007です。
Dim var_list As Variant, cnt As Integer cnt = 0 '配列の要素追加 If cnt = 0 Then ReDim var_list(0) Else ReDim Preserve var_list(UBound(var_list) + 1) End If var_list(UBound(var_list)) = "データ" cnt = cnt + 1
補足
・ReDim 配列の再定義。例)a(30,20,ココ)一番後ろしか再定義できない。
Preserveキーワードをつけるとデータが消えない。
・Ubound 配列の最大要素番号を返す。
Dim DIC As Object , keys As Object Dim i As Integer, temp as String Set DIC = CreateObject("Scripting.Dictionary") temp = "Test" 'リストに無ければ、リストと配列に追加 If Not DIC.Exists(temp) Then DIC.Add temp, "値" '辞書に追加 End If '確認 keys = DIC.keys For i = 0 To DIC.Count - 1 Debug.Print keys(i) Next i Set DIC = Nothing
'シート名チェック処理 Function checkSheetName(sheet_name As String) As Boolean Dim i As Integer Dim bln_return As Boolean bln_return = False For i = 1 To ThisWorkbook.Worksheets.Count If ThisWorkbook.Worksheets(i).Name = sheet_name Then bln_return = True If bln_return = True Then Exit For Next checkSheetName = bln_return End Function 'シート名の重複チェック。 If checkSheetName("Sheet1") Then MsgBox "同じシート名があります。" Exit Sub End If 'もっとスマートに書けるようになりたい