※参考度は個人的は評価です。(助かった度かも?)
Excelシート上に配置したコントロールを使用する方法
参考度:★★☆☆☆
VBAでダブルクォーテーションを扱う方法
参考度:★★☆☆☆
VBAでシートを追加する方法
参考度:★★☆☆☆
VBAで指定のシートを削除する方法
参考度:★★☆☆☆
VBAで対象のシートが存在するかチェックする方法
参考度:★★☆☆☆
VBAでメッセージボックス(MsgBox)を表示させる方法
参考度:★☆☆☆☆
VBAでコメントのサイズを変更する方法
参考度:★★★☆☆
VBAでコメントを記入する方法
参考度:★★★★☆
VBAでスペースを削除する方法
参考度:★☆☆☆☆
VBAで数値を文字列に変換する方法
参考度:★☆☆☆☆
VBAで文字列を数値に変換する方法
参考度:★☆☆☆☆
VBAで大文字/小文字の変換を行う方法
参考度:★★☆☆☆
VBAで指定の文字数を切出す(抽出)する方法
参考度:★☆☆☆☆
VBAで文字数を調べる方法
参考度:★☆☆☆☆
VBAで数式を設定する方法
参考度:★★★☆☆
VBAを使用した文字列の変換 全角、半角等
参考度:★★☆☆☆
VBAで開いているファイルを閉じる方法 ※確認メッセージも出さない
参考度:★★★☆☆
VBAを使用して対象のファイルをアクティブにする方法 シート選択も
参考度:★☆☆☆☆
VBAを使用してEXCELのシート上のデータをすべて削除する方法
参考度:★★☆☆☆
VBAを使用して対象のファイルを開く方法
参考度:★★☆☆☆
VBAを使用したEXCEL描画機能の一旦停止
参考度:★★☆☆☆
マクロを実行しているファイル名の取得
参考度:★★☆☆☆
-------------------------------------------------------------------
EXCEL VBA xls Excel2003
2011年9月22日木曜日
2011年9月17日土曜日
Excelシート上に配置したコントロールを使用する方法
Worksheetオブジェクト.OLEObjects(コントロール).Object.プロパティやメソッド
・コントロール
操作するコントロールを名前や番号で指定します。なお、番号で指定するときの先頭は1です。
・プロパティやメソッド
ValueやEnabledなど、コントロールを操作するときのプロパティやメソッドを指定します。
--------------------------------------------------------------------------------
【記述例】「TextBox1」というテキストボックスへ値をセットする
Worksheets("Sheet1").OLEObjects("TextBox1").Object.Value = "テスト"
【記述例2】「ComboBox1」というコンボボックスへアイテムを追加する
Worksheets("Sheet1").OLEObjects("ComboBox1").Object.AddItem "リスト1"
-------------------------------------------------------------------
EXCEL VBA xls Excel2003
・コントロール
操作するコントロールを名前や番号で指定します。なお、番号で指定するときの先頭は1です。
・プロパティやメソッド
ValueやEnabledなど、コントロールを操作するときのプロパティやメソッドを指定します。
--------------------------------------------------------------------------------
【記述例】「TextBox1」というテキストボックスへ値をセットする
Worksheets("Sheet1").OLEObjects("TextBox1").Object.Value = "テスト"
【記述例2】「ComboBox1」というコンボボックスへアイテムを追加する
Worksheets("Sheet1").OLEObjects("ComboBox1").Object.AddItem "リスト1"
-------------------------------------------------------------------
EXCEL VBA xls Excel2003
2011年9月16日金曜日
VBAでダブルクォーテーションを扱う方法
VBAでダブルクォーテーションを扱う場合は
""" のようにダブルクォーテーションを三つ重ねます。
-------------------------------------------------------------
Sheets(シート名).Cells(1, 1).Value = """ & "使用方法" & """
"使用方法" と表示されます。
-------------------------------------------------------------
EXCEL VBA xls Excel2003
""" のようにダブルクォーテーションを三つ重ねます。
-------------------------------------------------------------
Sheets(シート名).Cells(1, 1).Value = """ & "使用方法" & """
"使用方法" と表示されます。
-------------------------------------------------------------
EXCEL VBA xls Excel2003
VBAでシートを追加する方法
新しくシートを追加します。
引数の指定により、追加する場所、枚数、追加するシートの種類を指定することが可能です。
構文 Object.Add(Before, After, Count, Type)
設定項目 内容
Object Worksheetsオブジェクトコレクション,
Sheetsオブジェクトコレクション,
Chartsコレクションオブジェクト
Before 指定したシートの直前に新しいシートを追加 [省略可能]
After 指定したシートの直後に新しいシートを追加 [省略可能]
Count 追加するシートの枚数を指定。既定値は1 [省略可能]
Type 追加するシートの種類(上記表参照) [省略可能]
次のサンプルはアクティブブックの一番最後に、シート名を指定して新規ワークシートを追加します。
----------------------------------------------------------------
Sub Sheet_add()
'操作シートの後ろに挿入します。
Worksheets.Add(after:=Worksheets("操作")).Name = "シート名入力"
End Sub
-----------------------------------------------------------------
EXCEL VBA xls Excel2003
引数の指定により、追加する場所、枚数、追加するシートの種類を指定することが可能です。
構文 Object.Add(Before, After, Count, Type)
設定項目 内容
Object Worksheetsオブジェクトコレクション,
Sheetsオブジェクトコレクション,
Chartsコレクションオブジェクト
Before 指定したシートの直前に新しいシートを追加 [省略可能]
After 指定したシートの直後に新しいシートを追加 [省略可能]
Count 追加するシートの枚数を指定。既定値は1 [省略可能]
Type 追加するシートの種類(上記表参照) [省略可能]
次のサンプルはアクティブブックの一番最後に、シート名を指定して新規ワークシートを追加します。
----------------------------------------------------------------
Sub Sheet_add()
'操作シートの後ろに挿入します。
Worksheets.Add(after:=Worksheets("操作")).Name = "シート名入力"
End Sub
-----------------------------------------------------------------
EXCEL VBA xls Excel2003
VBAで指定のシートを削除する方法
VBAでシートを削除する方法です。
Worksheets("シート名を入力").Deleteで削除します。
ただし、存在しないシートを指定した場合はエラーになるので、
削除する前にシートが存在するかチェックする必要があります。
シートが存在するかのチェックはこちらから↓
VBAで対象のシートが存在するかチェックする方法
--------------------------------------------------------------
Sub Sheet_delete(sheetname As String)
'対象のシートが存在するかチェックを行う
'存在する場合は削除を実行
If Sheet_存在Check(sheetname) = True Then
Application.DisplayAlerts = False '確認メッセージを表示しない
Worksheets(sheetname).Delete
Application.DisplayAlerts = True '確認メッセージを表示する。
End If
End Sub
----------------------------------------------------------------
EXCEL VBA xls Excel2003
Worksheets("シート名を入力").Deleteで削除します。
ただし、存在しないシートを指定した場合はエラーになるので、
削除する前にシートが存在するかチェックする必要があります。
シートが存在するかのチェックはこちらから↓
VBAで対象のシートが存在するかチェックする方法
--------------------------------------------------------------
Sub Sheet_delete(sheetname As String)
'対象のシートが存在するかチェックを行う
'存在する場合は削除を実行
If Sheet_存在Check(sheetname) = True Then
Application.DisplayAlerts = False '確認メッセージを表示しない
Worksheets(sheetname).Delete
Application.DisplayAlerts = True '確認メッセージを表示する。
End If
End Sub
----------------------------------------------------------------
EXCEL VBA xls Excel2003
VBAで対象のシートが存在するかチェックする方法
VBA でマクロを組んで定型的なことを自動化する場合に、目的のシートやブックが
存在するかどうかのチェックは必ず必要になると思います。
そのシートがあるのに新規作成すると、エラーで終了します、
無い場合は作成するためにも存在のチェックが必要になります。
ここで紹介する Function は、アクティブになっているワークブックに、
引数 SheetName のシートが実際にあるかチェックします。
あれば True なければ False を返します。
Sheets.Count でワークブックにシートが何枚あるかわかります。
Sheets(i).Name でシートの名前を順番に取得できます。
For ループで1枚ずつ、シートの名前が SheetName と等しいかチェックして います。
-------------------------------------------------------------------
'SheetName のシートが実際にあるかチェックする
Function Sheet_存在Check(sheetname As String) As Boolean
Dim i As Integer
Sheet_存在Check = False
For i = 1 To Sheets.Count
If Sheets(i).Name = sheetname Then
Sheet_存在Check = True
Exit For
End If
Next
End Function
----------------------------------------------------------
EXCEL VBA xls Excel2003
存在するかどうかのチェックは必ず必要になると思います。
そのシートがあるのに新規作成すると、エラーで終了します、
無い場合は作成するためにも存在のチェックが必要になります。
ここで紹介する Function は、アクティブになっているワークブックに、
引数 SheetName のシートが実際にあるかチェックします。
あれば True なければ False を返します。
Sheets.Count でワークブックにシートが何枚あるかわかります。
Sheets(i).Name でシートの名前を順番に取得できます。
For ループで1枚ずつ、シートの名前が SheetName と等しいかチェックして います。
-------------------------------------------------------------------
'SheetName のシートが実際にあるかチェックする
Function Sheet_存在Check(sheetname As String) As Boolean
Dim i As Integer
Sheet_存在Check = False
For i = 1 To Sheets.Count
If Sheets(i).Name = sheetname Then
Sheet_存在Check = True
Exit For
End If
Next
End Function
----------------------------------------------------------
EXCEL VBA xls Excel2003
VBAでメッセージボックス(MsgBox)を表示させる方法
MsgBox関数を使ってメッセージを表示する方法です
基本の書式は下記の通りです。
MsgBox (表示文字列 ,[ボタン書式] ,[タイトル])
表示文字列:表示したい文字列を入力(省略不可)。複数行を設定するときは,
改行する位置に,,VbCrLfを挿入します。
ボタン書式:表示するボタンの種類,使用するアイコンのスタイル,標準ボタン等の値
の合計値です。省略時は[OK]ボタンのみ表示。
タイトル :メッセージボックスのタイトルバーに表示する文字列です。
省略時はアプリケーション名が表示されます。
■アイコン
定数 内容
vbCritical 警告メッセージアイコン
vbQuestion 問い合わせメッセージアイコン
vbExclamation 注意メッセージアイコン
vbinformation 情報メッセージアイコン
■ボタン
定数 内容
vbOKonly [OK]ボタンのみ表示
vbOKCancel [OK] [キャンセル] ボタン表示
vbAbortRetryignore [中止] [再試行] [無視] ボタン表示
vbYesNoCancel [はい] [いいえ] [キャンセル] ボタン表示
vbYesNo [はい] [いいえ] ボタン表示
vbRetryCancel [再試行 ] [キャンセル ] ボタン表示
■標準ボタン
定数 内容
vbDefaultButton1 第1ボタンを標準ボタンにする
vbDefaultButton2 第2ボタンを標準ボタンにする
vbDefaultButton3 第3ボタンを標準ボタンにする
-----------------------------------------------------------------------
【サンプルコード】
MsgBox "警告メッセージを表示します。", vbCritical, "警告"
MsgBox "無視ボタンを標準ボタンに設定しました。" _
& VbCrLf& "ここで改行して表示します。" _
, vbAbortRetryIgnore + vbInformation + _
vbDefaultButton3, "標準ボタンの設定例"
-----------------------------------------------------------------------
MsgBox関数の戻り値を利用して条件分岐
MsgBox関数の戻り値を利用して条件分岐できます。表示されたダイアログボックス上で選択されたボタンの種類を,戻り値を使って,次に実行する処理を分岐します。
■戻り値
定数 内容
vbOK [OK]ボタン
vbCancel [キャンセル] ボタン
vbAbort [中止] ボタン
vbRetry [再試行] ボタン
vbignore [無視] ボタン
vbYes [はい] ボタン
vbNo [いいえ] ボタン
------------------------------------------------------------------------
【サンプルコード】
If vbYes = MsgBox("はいボタンを押してください。", vbYesNo, "終了確認") Then
MsgBox "OK"
Else
MsgBox "押し間違えましたね。"
End If
------------------------------------------------------------------------
サンプルを作成していますので、下記よりご自由にダウンロードして下さい。
------------------------------------------------------------------------
EXCEL VBA xls Excel2003
基本の書式は下記の通りです。
MsgBox (表示文字列 ,[ボタン書式] ,[タイトル])
表示文字列:表示したい文字列を入力(省略不可)。複数行を設定するときは,
改行する位置に,,VbCrLfを挿入します。
ボタン書式:表示するボタンの種類,使用するアイコンのスタイル,標準ボタン等の値
の合計値です。省略時は[OK]ボタンのみ表示。
タイトル :メッセージボックスのタイトルバーに表示する文字列です。
省略時はアプリケーション名が表示されます。
■アイコン
定数 内容
vbCritical 警告メッセージアイコン
vbQuestion 問い合わせメッセージアイコン
vbExclamation 注意メッセージアイコン
vbinformation 情報メッセージアイコン
■ボタン
定数 内容
vbOKonly [OK]ボタンのみ表示
vbOKCancel [OK] [キャンセル] ボタン表示
vbAbortRetryignore [中止] [再試行] [無視] ボタン表示
vbYesNoCancel [はい] [いいえ] [キャンセル] ボタン表示
vbYesNo [はい] [いいえ] ボタン表示
vbRetryCancel [再試行 ] [キャンセル ] ボタン表示
■標準ボタン
定数 内容
vbDefaultButton1 第1ボタンを標準ボタンにする
vbDefaultButton2 第2ボタンを標準ボタンにする
vbDefaultButton3 第3ボタンを標準ボタンにする
-----------------------------------------------------------------------
【サンプルコード】
MsgBox "警告メッセージを表示します。", vbCritical, "警告"
MsgBox "無視ボタンを標準ボタンに設定しました。" _
& VbCrLf& "ここで改行して表示します。" _
, vbAbortRetryIgnore + vbInformation + _
vbDefaultButton3, "標準ボタンの設定例"
-----------------------------------------------------------------------
MsgBox関数の戻り値を利用して条件分岐
MsgBox関数の戻り値を利用して条件分岐できます。表示されたダイアログボックス上で選択されたボタンの種類を,戻り値を使って,次に実行する処理を分岐します。
■戻り値
定数 内容
vbOK [OK]ボタン
vbCancel [キャンセル] ボタン
vbAbort [中止] ボタン
vbRetry [再試行] ボタン
vbignore [無視] ボタン
vbYes [はい] ボタン
vbNo [いいえ] ボタン
------------------------------------------------------------------------
【サンプルコード】
If vbYes = MsgBox("はいボタンを押してください。", vbYesNo, "終了確認") Then
MsgBox "OK"
Else
MsgBox "押し間違えましたね。"
End If
------------------------------------------------------------------------
サンプルを作成していますので、下記よりご自由にダウンロードして下さい。
------------------------------------------------------------------------
EXCEL VBA xls Excel2003
VBAでコメントのサイズを変更する方法
コメントのサイズを変更したい場合は↓下記の通り追加します。
'コメントのサイズ変更
Sheets("シート名").Cells(row,col).Comment.Shape.Width = 130
Sheets("シート名").Cells(row,col).Comment.Shape.Height = 30
↓下記のようにするとコメントのテキストサイズにあわせて自動でサイズ調整します。
・・・たぶんですが、試してないので分かりません。
'自動調整
Sheets("シート名").Cells(row,col).Comment.Shape.TextFrame.AutoSize = True
※コメントを記入する方法はこちらから
--------------------------------------------------------------------
EXCEL VBA xls Excel2003
'コメントのサイズ変更
Sheets("シート名").Cells(row,col).Comment.Shape.Width = 130
Sheets("シート名").Cells(row,col).Comment.Shape.Height = 30
↓下記のようにするとコメントのテキストサイズにあわせて自動でサイズ調整します。
・・・たぶんですが、試してないので分かりません。
'自動調整
Sheets("シート名").Cells(row,col).Comment.Shape.TextFrame.AutoSize = True
※コメントを記入する方法はこちらから
--------------------------------------------------------------------
EXCEL VBA xls Excel2003
VBAでスペースを削除する方法
LTrim(文字列)
RTrim(文字列)
Trim(文字列)
LTrim関数,RTrim関数,Trim関数を利用して文字列の中からスペースを取り除くことができます。
引数に設定した文字式から,全角,半角にかかわらず,
LTrim関数は先頭のスペースを,
RTrim関数は末尾のスペースを,
Trim関数は先頭と末尾のスペースをを取り除きます。
------------------------------------------------------------------------
Sub スペース削除()
Dim astr as String
astr = " FC2ブログ "
MsgBox "@" + astr + "@" ' 「@ FC2ブログ @」と表示
MsgBox "@" + LTrim(astr) + "@" ' 「@FC2ブログ @」と表示
MsgBox "@" + RTrim(astr) + "@" ' 「@ FC2ブログ@」と表示
MsgBox "@" + Trim(astr) + "@" ' 「@FC2ブログ@」と表示
End Sub
------------------------------------------------------------------------
EXCEL VBA xls Excel2003
RTrim(文字列)
Trim(文字列)
LTrim関数,RTrim関数,Trim関数を利用して文字列の中からスペースを取り除くことができます。
引数に設定した文字式から,全角,半角にかかわらず,
LTrim関数は先頭のスペースを,
RTrim関数は末尾のスペースを,
Trim関数は先頭と末尾のスペースをを取り除きます。
------------------------------------------------------------------------
Sub スペース削除()
Dim astr as String
astr = " FC2ブログ "
MsgBox "@" + astr + "@" ' 「@ FC2ブログ @」と表示
MsgBox "@" + LTrim(astr) + "@" ' 「@FC2ブログ @」と表示
MsgBox "@" + RTrim(astr) + "@" ' 「@ FC2ブログ@」と表示
MsgBox "@" + Trim(astr) + "@" ' 「@FC2ブログ@」と表示
End Sub
------------------------------------------------------------------------
EXCEL VBA xls Excel2003
VBAで数値を文字列に変換する方法
Str(数値)
----------------------------------------------------------------------
Sub VAL関数()
Dim A As Integer
Dim B As Integer
A = 123
B = 12
MsgBox A + B '135が表示されます
MsgBox str(A) + str(B) '12312が表示されます。(文字列の連結)
End Sub
----------------------------------------------------------------------
EXCEL VBA xls Excel2003
----------------------------------------------------------------------
Sub VAL関数()
Dim A As Integer
Dim B As Integer
A = 123
B = 12
MsgBox A + B '135が表示されます
MsgBox str(A) + str(B) '12312が表示されます。(文字列の連結)
End Sub
----------------------------------------------------------------------
EXCEL VBA xls Excel2003
VBAで文字列を数値に変換する方法
Val(文字列)
Val関数は数字(String型)を適当な数値型のデータに変換します。
※ただし、数値に変換できない文字を読み込んだ時点で変換を中止します。
---------------------------------------------------------------
Sub VAL関数()
Dim A As String
Dim B As String
A = "123"
B = "15"
MsgBox Val(A) + Val(B) ’138(123+15)が表示されます。
MsgBox A + B '12315が表示されます。
End Sub
----------------------------------------------------------------
EXCEL VBA xls Excel2003
Val関数は数字(String型)を適当な数値型のデータに変換します。
※ただし、数値に変換できない文字を読み込んだ時点で変換を中止します。
---------------------------------------------------------------
Sub VAL関数()
Dim A As String
Dim B As String
A = "123"
B = "15"
MsgBox Val(A) + Val(B) ’138(123+15)が表示されます。
MsgBox A + B '12315が表示されます。
End Sub
----------------------------------------------------------------
EXCEL VBA xls Excel2003
VBAで大文字/小文字の変換を行う方法
Ucase(文字列)
Lcase(文字列)
Ucase関数はアルファベットの小文字を大文字に,
Lcase関数はアルファベットの大文字を小文字に変換します。
------------------------------------------------------------------------
Sub Ucase_Lcase()
Dim astr As String
astr = "FC2ブログ-Mocho"
MsgBox UCase(astr) ’「FC2ブログ-MOCHO」と表示されます
MsgBox LCase(astr) ’「fc2ブログ-mocho」と表示されます
End Sub
------------------------------------------------------------------------
EXCEL VBA xls Excel2003
Lcase(文字列)
Ucase関数はアルファベットの小文字を大文字に,
Lcase関数はアルファベットの大文字を小文字に変換します。
------------------------------------------------------------------------
Sub Ucase_Lcase()
Dim astr As String
astr = "FC2ブログ-Mocho"
MsgBox UCase(astr) ’「FC2ブログ-MOCHO」と表示されます
MsgBox LCase(astr) ’「fc2ブログ-mocho」と表示されます
End Sub
------------------------------------------------------------------------
EXCEL VBA xls Excel2003
2011年9月14日水曜日
VBAで指定の文字数を切出す(抽出)する方法
Mid(文字列,抽出開始位置,抽出文字数)
Right(文字列,抽出文字数)
Left(文字列,抽出文字数)
Mid関数は指定開始位置から指定文字数までを抽出
Right関数は右から指定文字数までを抽出
Left関数は左から指定文字数までを抽出
--------------------------------------------------------------
Sub strTyuusyutu()
Dim astr As String
astr = "FC2ブログ-Mocho"
MsgBox Mid(astr, 3, 3) '「ブログ」と表示されます
MsgBox Right(astr, 5) '「Mocho」と表示されます
MsgBox Left(astr, 3) '「FC2」と表示されます
End Sub
--------------------------------------------------------------
EXCEL VBA xls Excel2003
Right(文字列,抽出文字数)
Left(文字列,抽出文字数)
Mid関数は指定開始位置から指定文字数までを抽出
Right関数は右から指定文字数までを抽出
Left関数は左から指定文字数までを抽出
--------------------------------------------------------------
Sub strTyuusyutu()
Dim astr As String
astr = "FC2ブログ-Mocho"
MsgBox Mid(astr, 3, 3) '「ブログ」と表示されます
MsgBox Right(astr, 5) '「Mocho」と表示されます
MsgBox Left(astr, 3) '「FC2」と表示されます
End Sub
--------------------------------------------------------------
EXCEL VBA xls Excel2003
VBAで文字数を調べる方法
Len(文字列式)
Len関数は指定した文字列式に含まれる文字数を返します。
------------------------------------------------------------------
Sub example_len()
Dim astr As String
astr = "FC2ブログ"
MsgBox "文字数: " & Len(astr) ’「6」が表示されます
End Sub
-------------------------------------------------------------------
EXCEL VBA xls Excel2003
Len関数は指定した文字列式に含まれる文字数を返します。
------------------------------------------------------------------
Sub example_len()
Dim astr As String
astr = "FC2ブログ"
MsgBox "文字数: " & Len(astr) ’「6」が表示されます
End Sub
-------------------------------------------------------------------
EXCEL VBA xls Excel2003
VBAで数式を設定する方法
プログラムからセルに数式を設定して、Excelの機能を使って合計を求めたりすることがでるます。
もちろん、Formulaプロパティに文字列として数式を設定しているだけなので、
合計だけでなくさまざまな数式を入力することができます。
Range("A6").Formula = "=SUM(A1:A5)"
さらにCellアドレスも併用すると、ループ処理などで利用できるようになります。
AddressプロパティはExcelではおなじみの"A1"とか"B3"等の文字列を返します。
Cells(6, 3).Formula = "=SUM(" & Cells(1, 3).Address(False, False) & ":" & Cells(5, 3).Address(False, False) & ")"
-------------------------------------------------------------------------
EXCEL VBA xls Excel2003
もちろん、Formulaプロパティに文字列として数式を設定しているだけなので、
合計だけでなくさまざまな数式を入力することができます。
Range("A6").Formula = "=SUM(A1:A5)"
さらにCellアドレスも併用すると、ループ処理などで利用できるようになります。
AddressプロパティはExcelではおなじみの"A1"とか"B3"等の文字列を返します。
Cells(6, 3).Formula = "=SUM(" & Cells(1, 3).Address(False, False) & ":" & Cells(5, 3).Address(False, False) & ")"
-------------------------------------------------------------------------
EXCEL VBA xls Excel2003
VBAを使用した文字列の変換 全角、半角等
【書式】 StrConv(文字列式,変換形式)
文字列式:変換する文字列です。
変換形式:実行する変換の種類の合計値として設定。
定数 内容
vbUpperCase 大文字に変換
vbLowerCase 小文字に変換
vbProperCase 各単語の先頭の文字を大文字に変換
vbWide 半角文字を全角文字に変換
vbNarrow 全角文字を半角文字に変換
vbKatakana ひらがなをカタカナに変換
vbHiragana カタカナをひらがなに変換
vbUnicode システム既定のコードページを使って文字列をUnicodeに変換
vbFromUnicode 文字列をUnicodeからシステム既定のコードページに変換
EXCEL VBA xls Excel2003
文字列式:変換する文字列です。
変換形式:実行する変換の種類の合計値として設定。
定数 内容
vbUpperCase 大文字に変換
vbLowerCase 小文字に変換
vbProperCase 各単語の先頭の文字を大文字に変換
vbWide 半角文字を全角文字に変換
vbNarrow 全角文字を半角文字に変換
vbKatakana ひらがなをカタカナに変換
vbHiragana カタカナをひらがなに変換
vbUnicode システム既定のコードページを使って文字列をUnicodeに変換
vbFromUnicode 文字列をUnicodeからシステム既定のコードページに変換
EXCEL VBA xls Excel2003
VBAで開いているファイルを閉じる方法 ※確認メッセージも出さない
ファイルを閉じる方法
SAVEするかどうかのメッセージボックスを表示
Workbooks(OpenFilename).Close
SAVEせずに閉じる
Workbooks(OpenFilename).Close savechanges:=False
SAVEして閉じる
Workbooks(OpenFilename).Close savechanges:=True
※緑色も文字は対象のファイル名に置き換えてください。
※クリップボードにデータが残っている場合は、
別で貼付けに使うかと聞いてくるメッセージボックスが表示されてしまう場合があるので
Application.DisplayAlerts = False
でメッセージを出さないようにする。もちろんTrueにすると確認メッセージを表示
-----------------------------------------------------------------
Dim OpenFilename As Strig
Sub File_Close()
OpenFilename = "BBB.xls"
'開いたファイルを閉じる
Application.DisplayAlerts = False '確認メッセージを出さない
Workbooks(OpenFilename).Close savechanges:=False '保存せずに閉じる
Application.DisplayAlerts = True '確認メッセージを出す
End Sub
-----------------------------------------------------------------
EXCEL VBA xls Excel2003
SAVEするかどうかのメッセージボックスを表示
Workbooks(OpenFilename).Close
SAVEせずに閉じる
Workbooks(OpenFilename).Close savechanges:=False
SAVEして閉じる
Workbooks(OpenFilename).Close savechanges:=True
※緑色も文字は対象のファイル名に置き換えてください。
※クリップボードにデータが残っている場合は、
別で貼付けに使うかと聞いてくるメッセージボックスが表示されてしまう場合があるので
Application.DisplayAlerts = False
でメッセージを出さないようにする。もちろんTrueにすると確認メッセージを表示
-----------------------------------------------------------------
Dim OpenFilename As Strig
Sub File_Close()
OpenFilename = "BBB.xls"
'開いたファイルを閉じる
Application.DisplayAlerts = False '確認メッセージを出さない
Workbooks(OpenFilename).Close savechanges:=False '保存せずに閉じる
Application.DisplayAlerts = True '確認メッセージを出す
End Sub
-----------------------------------------------------------------
EXCEL VBA xls Excel2003
VBAを使用して対象のファイルをアクティブにする方法 シート選択も
Windows(ThisFilename).Activate
※赤文字にアクティブにしたいファイル名を入力
Sheets("データ").Select
※対象のシートを選択
--------------------------------------------------------------------------
Dim ThisFilename As String
Sub Data_File_Select()
ThisFilename = "AAA.xls"
Windows(ThisFilename).Activate
Sheets("データ").Select
End Sub
--------------------------------------------------------------------------
EXCEL VBA xls Excel2003
※赤文字にアクティブにしたいファイル名を入力
Sheets("データ").Select
※対象のシートを選択
--------------------------------------------------------------------------
Dim ThisFilename As String
Sub Data_File_Select()
ThisFilename = "AAA.xls"
Windows(ThisFilename).Activate
Sheets("データ").Select
End Sub
--------------------------------------------------------------------------
EXCEL VBA xls Excel2003
VBAを使用してEXCELのシート上のデータをすべて削除する方法
オートフィルタが入っている場合、すべて削除できない場合があるので、
オートフィルタを削除してから、実際の削除を実行する。
オートフィルタを使用しているかの調査
Worksheets("データ").AutoFilterMode = True
※Trueならオートフィルタを使用、Falseなら未使用
後は下記を参照
-------------------------------------------------------------------------
Dim ThisFilename As String
Sub Data_copy()
ThisFilename = "AAA.xls"
'対象のファイルをアクティブにする
Windows(ThisFilename).Activate
'対象のシートを選択する
Sheets("データ").Select
'オートフィルターが入っているかのチェック
If Worksheets("データ").AutoFilterMode = True Then
Selection.AutoFilter 'オートフィルターが入っている場合は削除
End If
'すべてのセルを選択
Cells.Select
'クリアする
Selection.ClearContents
End Sub
-----------------------------------------------------------------------
EXCEL VBA xls Excel2003
オートフィルタを削除してから、実際の削除を実行する。
オートフィルタを使用しているかの調査
Worksheets("データ").AutoFilterMode = True
※Trueならオートフィルタを使用、Falseなら未使用
後は下記を参照
-------------------------------------------------------------------------
Dim ThisFilename As String
Sub Data_copy()
ThisFilename = "AAA.xls"
'対象のファイルをアクティブにする
Windows(ThisFilename).Activate
'対象のシートを選択する
Sheets("データ").Select
'オートフィルターが入っているかのチェック
If Worksheets("データ").AutoFilterMode = True Then
Selection.AutoFilter 'オートフィルターが入っている場合は削除
End If
'すべてのセルを選択
Cells.Select
'クリアする
Selection.ClearContents
End Sub
-----------------------------------------------------------------------
EXCEL VBA xls Excel2003
VBAを使用して対象のファイルを開く方法
ファイル検索ウィザードを開いて対象ファイルを選択して開く方法
ウィザードを開く
Application.GetOpenFilename("EXCELファイル (*.xls),*.xls")
※赤字で対象ファイルの指定
Filename$だとフルパスで名前を取得 ※ C:\フォルダ\AAA.xls
Dir(Filename$)だとファイル名のみ ※AAA.xls
------------------------------------------------------------------
Dim OpenFilename As String
Sub Book_open()
'ウィザードを開いて対象ファイルを検索
Filename$ = Application.GetOpenFilename("EXCELファイル (*.xls),*.xls")
' OpenFilename = Filename$ 'フルパス付き
OpenFilename = Dir(Filename$) 'ファイル名のみ
'ファイルを開く
Workbooks.Open OpenFilename
End Sub
-------------------------------------------------------------------
EXCEL VBA xls Excel2003
ウィザードを開く
Application.GetOpenFilename("EXCELファイル (*.xls),*.xls")
※赤字で対象ファイルの指定
Filename$だとフルパスで名前を取得 ※ C:\フォルダ\AAA.xls
Dir(Filename$)だとファイル名のみ ※AAA.xls
------------------------------------------------------------------
Dim OpenFilename As String
Sub Book_open()
'ウィザードを開いて対象ファイルを検索
Filename$ = Application.GetOpenFilename("EXCELファイル (*.xls),*.xls")
' OpenFilename = Filename$ 'フルパス付き
OpenFilename = Dir(Filename$) 'ファイル名のみ
'ファイルを開く
Workbooks.Open OpenFilename
End Sub
-------------------------------------------------------------------
EXCEL VBA xls Excel2003
登録:
投稿 (Atom)