本サイトは、登録ブロガーさんと一緒に作るクチコミポータルサイトです。全ての情報は参加ブロガーのクチコミで成り立っています。
TOP >記事詳細ページ

【VB】備忘録 3/18



分かっている人には分かりきったことを、

分からない人には分からないことを書いてすみません(^_^;


自分のための備忘録。

ワークシートの追加削除
・1枚目の右にシートを2枚追加する場合。Worksheets.Add After:=worksheets(1), Count:=2
・一番右にシートを追加する場合。~After:=Worksheets(Sheets.Count)
・シート削除確認のメッセージを表示せずにシートを削除する場合。Application.DisplayAlerts=False ←メッセージを表示させない
Worksheets("Sheet6").Delete
Application.DisplayAlerts=True ← DisplayAlerts の値を True に



指定したセルの行番号と列番号を取得する
現在選択中のセルの行番号 = ActiveCell.Row
現在選択中のセルの列番号 = ActiveCell.Column




セル範囲の指定方法
・Range("A2:C5") ←→ Range(Cells(2,1),Cells(5,3))
・Range("A2:C5,B12:D15") ←→ Union(Range(Cells(2,1),Cells(5,3)),Range(Cells(12,2),Cells(15,4)))



VBAでユーザーにファイル保存場所(フォルダ)を指定させる方法



作業用ブックを開く

まず押さえておきたいポイントは「ブックを開くと、開いたブックがアクティブになる」ということです。ユーザーに内緒でブックを開きたいのに、そのブックが見えてしまってはいけません。そこで、開いたブックが見えないように画面の表示を止めます。内緒のブックを開いたら元のブックをアクティブにしてから画面を更新します。Sub Sample16()
Application.ScreenUpdating = False
Workbooks.Open "D:\Book2.xls"
Workbooks(1).Activate
Application.ScreenUpdating = True
End Sub
画面の更新を抑止するのは ScreenUpdating プロパティです。このプロパティもプロシージャが終了すると自動的に True がセットされるのですが、予期せぬトラブルを避けるためにも明示的に True を設定した方がいいでしょう。


ワークブックを閉じる
・自分自身を閉じるThisWorkbook.Close
・上書き保存して閉じるThisWorkbook.Close SaveChanges:=True
・"abc.xls" を閉じるWorkbooks("abc.xls").close
・名前をつけて保存して閉じるActiveWorkbook.Close SaveChanges:=True, Filename:="ファイルのパスとファイル名"




ワークブックのパスを取得

ワークブックがどのフォルダに保存されているかを知る方法です。???.Pathプロパティで知ることができます。なお、このプロパティで取得できるパスはフルパスです。

ちなみに???の部分は、どちらもお馴染みのActiveWorkbookWorkbooks(n)ThisWorkbookなどのワークブックを表すオブジェクトです。詳しくは、2.1 直接指定する方法2.2 間接的に指定する方法をどうぞ。



データの型変換

VBAの世界では、VBA自身がこの「型変換」をある程度自動でやってくれますが、本来はデータ型の違う変数間で値の転記を行なう場合は、「データ型変換関数」を明示する必要があります。
「データ型変換関数」には以下のものがあります。

CBoolブール型(Boolean)へのデータ変換
CByteバイト型(Byte)へのデータ変換
CCur通貨型(Currency)へのデータ変換
CDate日付型(Date)へのデータ変換
CDbl倍精度浮動小数点実数型(Double)へのデータ変換
CInt整数型(Integer)へのデータ変換
CLng長整数型(Long)へのデータ変換
CSng単精度浮動小数点実数型(Single)へのデータ変換
CVarバリアント型(Variant)へのデータ変換
CStr文字列型(String)へのデータ変換



ユーザーフォームを任意の位置に表示する

Sub ユーザーフォームを任意の位置に表示する()
With UserForm1
.StartUpPosition = 0 ‘初期表示位置を表す値を指定しない
.Top = 100 ‘上端からの距離を設定する
.Left = 300 ‘左端    〃
.Show ‘表示する
End With
End Sub



ブックを開いたときに、自動でユーザーフォームが開かれるようにするには?

1.標準モジュールに「Auto_Open()」を書く
Sub Auto_Open()
  UserForm1.Show
End Sub



ブックを開いたと同時に、ユーザーフォーム(UserForm1)が開きました。


2.ThisWorkbook モジュールに「Workbook_Open()」を書く
Private Sub Workbook_Open()
  UserForm1.Show
End Sub


ブックを開いたと同時に、ユーザーフォーム(UserForm1)が開きました。




Similar Posts:

つぶやくどうぞ twitter に引用しちゃってください(^^)ノ

関連する投稿

→つづきをみる
この記事の評価
1 2 3 4 5
笑えた
0pt
役に立った
0pt
欲しい!
0pt
人に勧めたい
0pt
驚いた
0pt
徒然
「徒然」
徒然の記事一覧ページへ
音楽鑑賞記録や読書メモ・感想文、パソコン関係などを徒然なるままに綴っています。
ブログを登録しよう!

みんなの評価ランキング

カテゴリ一覧

人気ブログ

新着ブログ