SSブログ

Excel2000 VBA メモ1 [Excel2000 VBA メモ]

マクロ実行の高速化

  1. Application.ScreenUpdating=False '画面更新の抑制
  2. 処理
  3. Application.ScreenUpdating=True '抑制の解除
  4. 処理内容によってはかなり高速化する


VBエディター イミティエイト

  1. Debug.Print A    →イミティエイトウインドウにAの値が表示される
  2. B=2 と入力し、?Bと入力するとBの値2が表示される
プロシージャの表示、モジュール全体を連続表示 切り替えボタン(左下)
excel_VBE_02.jpg

 

アクティブセルの位置を記録し、処理後にセルの位置を処理前にもどす

  1. 現在位置 = AcriveCell.Address
  2. 処理
  3. Range(現在位置).Select

 

登録したマクロにショートカットキーを設定する

  1. メニュバー>ツール>マクロ でショートカットキーを設定するマクロを選択し、右下の「オプション」ボタンを押して設定する
 

Debug.Print

  • Debug.Print  変数 & "/" & 変数2 & "/" & 変数3 & "/" & 変数4
  • イミティエイト ウィンドウに変数1-4が表示される
  • イミティエイトウィンドウを表示するには、VBエディターのメニューバー>表示タブからイミティエエイトウィンドウを選択する
 

Dim test As Range

  • testをRange(セル範囲)にする  例 Range("A1:C3")
  • 値を入れるときはSetを使用する
  • Set test = Range("A1:C3")
  • test = 10   A1からC3の範囲に10が入る
  • test.Delete  上に移動
  • test = "" 移動せずにセルを空にするRange("A1:A3").Clear Range("A1:A3").ClearContents

マクロ実行時に音を出す

  • Beep

 

ワークブックをアクティブにする(複数のブックを起動している時)

  • Workbooks("ブック名.xls") .Activate  '最前面に表示(アクティブにする)

シートに背景画像の表示、削除

  •  ActiveSheet.SetBackgroundPicture Filename:="C:\1.jpg"  表示
  •  ActiveSheet.SetBackgroundPicture Filename:=vbNullString  または""設定しない(削除)

セル幅を設定する

  •  Cells(1, 1).ColumnWidth = 8                      基準文字0(ゼロ)8文字分の幅?
  •  Cells(1, 1).ColumnWidth = 100/1.78          セル幅を約100mmに設定する(印刷時)1.78の値を変えて100mmで印刷されるようにする

ブック,シート情報

  • ブックの シート数を調べる Worksheets.Count
  • シート名を調べる      Worksheets(シート番号).Name
  • ブック名を調べる      ActiveWorkbook.Name
  • ブックのファイルサイズ    FileLen(フルパス) C:\1.xls
  • ブックのフルパス       ActiveWorkbook.FullName

For ループ

  • For x = 1 To 100
  • x = x+1 
  • If x=10 Then Exit For       xが10なら forから抜け出す
  • Next x
  • For ループを途中で抜け出すのには、Exit For
  • For x=0 To 100 Step 5     xは0.5.10.15・・・・・・・・100

Exit Sub

  •  Exit Sub でSubから抜け出す(終了する)

GoTo ラベル

  • If x=10 Then GoTo ラベル   xが10ならラベルに飛ぶ(もどってこない)
  •  ラベル:
  • 処理

With      End With   複数の処理

  • With cells(1,1) ’セルA1にまとめて設定 太字の部分を省略できる
  • cells(1,1).Value = 10
  •  With
  • cells(1,1) .Size = 14
  • cells(1,1) .Bold = True
  •  End With
  • cells(1,1).ColumnWidth =16
  • cells(1,1).RowHeight = 20
  • End With 

If   Then  Else  End If
If   Then  ElseIf  End If




数値変数

  • データ型       名称             消費メモリー
  • Integer             整数型                2バイト
  • Long                長整数型               4バイト 
  • Single      単精度浮動小数点数型      4バイト
  • Double             倍精度浮動小数点数型      8バイト
  • Currency         通貨型                8バイト

文字列変数

  • String             文字列型

オブジェクトを格納する変数

  • Object            オブジェクト型

日付を格納する変数

  • Date       日付型

全てのデータに対応する変数

  • Variant           バリアント型

コードの記述が長くなった時は_アンダーバーで改行 「半角スペース+_(アンダースコア?)」

  • ActiveSheet.SetBackgroundPicture Filename:= _
  • vbNullString 
  •  ActiveSheet.SetBackgroundPicture Filename:=vbNullString と同じ

 


nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。