疑問解決(エクセルTips)

2015/6/25

エクセルのTipsを解説します。

・概要

 みなさんエクセルを良く使うと 思います。
 しかし、使わない機能や知らない機能がいっぱいあると思います。
 このページでは、知っていれば便利な機能を書きます。

・キーボード操作
 エクセルは、ある程度の操作であればマウスを使わずに、
 キーボードのみで使うことができます。

 

分類 動作 キー
ブック間 ブックの移動(前) [Ctrl]+[Tab]
[Ctrl]+[F6]
ブックの移動(後) [Ctrl]+[Shift]+[Tab]
[Ctrl]+[Shift]+[F6]
シート間 シートの移動(先頭)

[Ctrl]+[Home]

シートの移動(前)

[Ctrl]+[PageUp]

シートの移動(次)

[Ctrl]+[PageDown]

シートの移動(最後) [Ctrl]+[End]
シート 行頭に移動(A列) [Home]
1画面下に移動 [PageDown]
1画面上に移動 [PageUp]
1画面右に移動 [Alt]+[PageDown]
1画面左に移動 [Alt]+[PageUp]
シートの先頭に移動 [Ctrl]+[Home]
シートの終りに移動 [Ctrl]+[End]
データがある範囲の境界に移動 [Ctrl]+[カーソルキー]
数式と結果表示の切替 [Ctrl]+[Shift]+[@]
列全体を選択 [Ctrl]+[Space]
行全体を選択 [Shift]+[Space]
選択範囲で下にコピー [Ctrl]+[D]
選択範囲で右にコピー [Ctrl]+[R]
入力/編集モードの切替

[F2]

・関数
 たまに使う関数の解説

 

関数名 解説
CONCATENATE 複数の文字列を結合して 1 つの文字列にまとめます。

CONCATENATE(文字列1,文字列2,...)

文字列1,文字列2,... を1つにまとめます。
引数は 1 〜 30 個まで指定できます。
また、文字列だけでなく、数値やセル参照も指定できます。
End 終端セルの取得

End(Direction)

指定セルを含んだ領域の終端を返します。
Offset 指定セルからの相対位置

Range(セル).Offset(x, y)

Range("A1").Offset(1,1) は、B2セルを表します。
・定数
 関数に引数として定数を指定する場合があります。
 定数は基本的に列挙型で定義されていることが多いです。

 

種類 解説
Direction
方向

定 数 解 説 キー
xlUp -4162 上方向 [Ctrl]+[↑]
xlDown -4121 下方向 [Ctrl]+[↓]
xlToLeft -4159 左方向 [Ctrl]+[←]
xlToRignt -4161 右方向 [Ctrl]+[→]

 マクロとVBA(VisualBasic for Applications)は、よく混同されて使われる言葉です。
 マクロとは、自動で処理をさせることです。
 そして、VBAはマクロを記述するための言語です。
 そのため、「マクロはVBAで作られている」と言うのが正解です。

 また、VBAで使う「モジュール」という単語の意味は、VBAを記述する場所です。
 モジュールには、ワークシートモジュールから、ブックモジュール、標準モジュールがありますが、
 標準モジュールに記述すれば間違いないと思います。

 たまに使うVBA解説

 

操 作 関数/プロパティ 解説、サンプル
ブックを開く Open Workbooks.Open "ブック名"

※パスに注意してください。
ブックを閉じる Close
オプション
 saveChanges:保存するかどうか。
  True:保存する/False:保存しない
Workbooks("ブック名").Open saveChanges:=False
ブックの名前 Name Workbook.Name
セルに値を入れる Value Dim strOpenFile As String
Range("C4").Value = strOpenFile

セル”C4”に文字列代入
ファイルオープンダイアログ GetOpenFilename Dim strOpenFile As String
strOpenFile = Application.GetOpenFilename

選択したファイルが戻り値として取得できる。
選択されなければ"False"が返ります。

ファイル名の取得

GetFileName Dim strPath As String
Dim oFSO As Object

Set oFSO = CreateObject("Scripting.FileSystemObject")
Range("C5").Value = oFSO.GetFileName(Range("C4").Value)
ベースネームの取得 GetBaseName Dim strPath As String
Dim oFSO As Object

Set oFSO = CreateObject("Scripting.FileSystemObject")
Range("C5").Value = oFSO.GetBaseName(Range("C4").Value)

ファイル名の拡張子を抜いた物をベースネームと言います。
フルパスの取得 GetAbsolutePathName Dim strPath As String
Dim oFSO As Object

Set oFSO = CreateObject("Scripting.FileSystemObject")
Range("C5").Value = oFSO.GetAbsolutePathName(Range("C4").Value)
親フォルダのパスの取得 GetParentFolderName Dim strPath As String
Dim oFSO As Object

Set oFSO = CreateObject("Scripting.FileSystemObject")
Range("C5").Value = oFSO.GetParentFolderName(Range("C4").Value)
カレントドライブの変更 ChDrive (strPath)  
カレントパスの変更 ChDir (strPath)  
印刷 PrintOut()
オ プション 解 説
From 開始ページ番号
To 最終ページ番号
Copies 印刷部数
Preview 印刷プレビューを呼び出すには true
ActivePrinter アクティブ プリンタの名前を設定
PrintToFile ファイルに出力する場合は true
Collate 複数部数印刷するときに
部単位で印刷する場合は true
PrToFileName PrintToFile が true
に設定された場合の印刷先のファイル名
 
保存

Save()

 
別名で保存 SaveAs(ファイル名)  
確認ダイアログ制御 Application.DisplayAlerts Falseにするとダイアログが表示されなくなります。
変更されたかのチェック Workbook.Saved 変更されて保存されていないブックは、このプロパティがFalseになっ ています。
これにTrueをいれることによって、変更後未保存で終了する際、
”変更を保存しますか?”確認ダイアログを表示しない様に出来ます。
形式を選択して貼り付け PasteSpecial
オプション
 Paste 貼り付け形式
  すべて xlPasteAll -4104
  数式 xlPasteFormulas -4123
  値 xlPasteValues -4163
  書式 xlPasteFormats -4122
  コメント xlPasteComments -4144
  入力規則 xlDataValidation 6
  罫線を除く全て xlPasteAllExceptBorders 7
  列幅 xlColumnWidths 8
 Operation 演算して貼り付けの場合
  しない xlPasteSpecialOperationNone -4142
  加算 xlPasteSpecialOperationAdd 2
  減算 xlPasteSpecialOperationSubtract 3
  乗算 xlPasteSpecialOperationMultiply 4
  除算 xlPasteSpecialOperationDivide 5

 SkipBlanks 空白セルを無視するか(デフォルトFalse)
 Transpose 行列を入れ替えるか(デフォルト:False)
 
切り取り・コピーモードの解除 CutCopyMode Application.CutCopyMode = False
フォルダ作成 MkDir MkDir "FolderName"
ハイパーリンクの作成 Hyperlinks.Add
オ プション 解 説
Anchor 必須
アンカーを指定。
Rangeオブジェクトまたは
Shapeオブジェクトを指定
Address 必須
アドレスを指定
SubAddress ハイパーリンクのサブアドレスを指定
ScreenTip ヒントを指定
TextToDisplay 表示テキストを指定

ActiveSheet.Hyperlinks.Add Anchor:=Cells(1, 1), Address:="c:\folder"

その他の使い方

 

操作 解説、サンプル
定数の宣言 Public Const CFileNameCell = "C4"
ブックの指定 Workbooks("Book1.xls")
諸説色々ありますが、基本は拡張子つきです。
フォルダオプションで、拡張子を表示しない設定にしている場合は、
”Book1”でもいけますが拡張子をつけた方が安全です。
ただ、新規で作成してまだ保存していないブックについては、
ファイルになっていないので拡張子は存在しません。
その場合はブック名だけになります。
Cells(行,列) 指定は行,列の順番。
一番左上が(1,1)となり、1始まりとなっている事に注意する
オートフィルタモードの判定 オートフィルタモードになっているかどうかは下記で判断できます。
 ActiveSheet.AutoFilterMode
ただしフィルタがかかっているかどうかは判断できません。
フィルタがかかっているかどうかは下記となります。
 ActiveSheet.FilterMode
・色
セル色カラーの 設定
VBAやVisualBasicからエクセルのセル色を設定する場合は、
InteriorのColorIndexをセットする事で可能です。
ただし、ColorIndexの値は規則性がないため、一覧を書きます。

1
&H000000
RGB(0,0,0)

2
&HFFFFFF
RGB(255,255,255)

3
&H0000FF
RGB(255,0,0)

4
&H00FF00
RGB(0,255,0)

5
&HFF0000
RGB(0,0,255)

6
&H00FFFF
RGB(255,255,0)

7
&HFF00FF
RGB(255,0,255)

8
&HFFFF00
RGB(0,255,255)

9
&H000080
RGB(128,0,0)

10
&H008000
RGB(0,128,0)

11
&H800000
RGB(0,0,128)

12
&H008080
RGB(128,128,0)

13
&H800080
RGB(128,0,128)

14
&H808000
RGB(0,128,128)

15
&HC0C0C0
RGB(192,192,192)

16
&H808080
RGB(128,128,128)

17
&HFF9999
RGB(153,153,255)

18
&H663399
RGB(153,51,102)

19
&HCCFFFF
RGB(255,255,204)

20
&HFFFFCC
RGB(204,255,255)

21
&H660066
RGB(102,0,102)

22
&H8080FF
RGB(255,128,128)

23
&HCC6600
RGB(0,102,204)

24
&HFFCCCC
RGB(204,204,255)

25
&H800000
RGB(0,0,128)

26
&HFF00FF
RGB(255,0,255)

27
&H00FFFF
RGB(255,255,0)

28
&HFFFF00
RGB(0,255,255)

29
&H800080
RGB(128,0,128)

30
&H000080
RGB(128,0,0)

31
&H808000
RGB(0,128,128)

32
&HFF0000
RGB(0,0,255)

33
&HFFCC00
RGB(0,204,255)

34
&HFFFFCC
RGB(204,255,255)

35
&HCCFFCC
RGB(204,255,204)

36
&H99FFFF
RGB(255,255,153)

37
&HFFCC99
RGB(153,204,255)

38
&HCC99FF
RGB(255,153,204)

39
&HFF99CC
RGB(204,153,255)

40
&H99CCFF
RGB(255,204,153)

41
&HFF6633
RGB(51,102,255)

42
&HCCCC33
RGB(51,204,204)

43
&H00CC99
RGB(153,204,0)

44
&H00CCFF
RGB(255,204,0)

45
&H0099FF
RGB(255,153,0)

46
&H0066FF
RGB(255,102,0)

47
&H996666
RGB(102,102,153)

48
&H969696
RGB(150,150,150)

49
&H663300
RGB(0,51,102)

50
&H669933
RGB(51,153,102)

51
&H003300
RGB(0,51,0)

52
&H003333
RGB(51,51,0)

53
&H003399
RGB(153,51,0)

54
&H663399
RGB(153,51,102)

55
&H993333
RGB(51,51,153)

56
&H333333
RGB(51,51,51)

 

・差分比較
 WinMergeというdiffツールにプラグインを入れることによって、
 エクセルファイルの差分比較が出来るようになります。
 
 xdocdiff WinMerge Plugin
・覚書
 
さらに情報が欲しい方は、Google検索で  
Google
・TOPへ戻る

メールはこちらに