おもにエクセルとワードについてメモ的に書くつもりです。
例えば下記の例題のようにチョットしたことなどです。(あれば便利なくても・・・)
ダウンロード可能ファイル有ります。最下行まで行って見てください。
ショートカット集追加しました。
![]() |
ミニ解説 |
![]() | |
![]() |
' **************************************************************
Sub シートを分割()
Sheets("マクロ").Select
ActiveWindow.SplitRow = 1
ActiveWindow.SmallScroll Down:=1
End Sub
' **************************************************************
' 敬称追加マクロ
Sub 敬称追加()
Sheets("sheet1").Select
Range("b2").Select
Do Until ActiveCell.Value = "" '空白行になるまで繰り返す
ActiveCell.Value = ActiveCell.Value & "様" ' 前に付加する事も可
ActiveCell.Offset(1).Select
Loop
End Sub
' **************************************************************
' 保存しないで終了
Sub 無保存終了()
a% = MsgBox("本当にやめるの?", vbYesNo)
Select Case a%
Case vbYes
ActiveWorkbook.Saved = True
ActiveWorkbook.Close
Application.Quit
Case vbNo
Sheets("メニュー").Select Range("a1").Select
MsgBox "仕事は継続されました。"
End Select
End Sub
' **************************************************************
' 内容に変更があった場合ブックを保存してから終了
Sub 保存確認終了()
a% = MsgBox("変更があった場合保存終了します", vbYesNo)
Select Case a%
Case vbYes
If ActiveWorkbook.Saved = False Then
ActiveWorkbook.Save
End If
ActiveWorkbook.Close
Application.Quit
Case vbNo
Sheets("メニュー").Select Range("a1").Select
MsgBox "仕事は継続されました。"
End Select
End Sub
' **************************************************************
' エクセルから他の(ノートパッド)ファイルを呼び出す。
Sub remote1()
a& = Shell("notepad.exe", 1)
SendKeys "%f" + "o" + "%n" + "akira.txt" + "{enter}"
End Sub
' akira.txt はファイル名
' **************************************************************
'現在のデータ範囲に罫線を引くマクロ
Sub 罫線引き()
Sheets("sheet1").Select
Range("b5").Select
Application.ScreenUpdating = False ' 画面表示を更新しない
Selection.CurrentRegion.Select
With Selection.Borders(xlLeft)
.Weight = xlHairline
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlRight)
.Weight = xlHairline
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlTop)
.Weight = xlHairline
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlBottom)
.Weight = xlHairline
.ColorIndex = xlAutomatic
End With
Selection.BorderAround Weight:=xlThin, ColorIndex:=xlAutomatic
End Sub
' **************************************************************
' 敬称追加マクロ(C列で追加する)
Sub 敬称追加()
Sheets("sheet2").Select
行 = ActiveCell.Row
桁 = ActiveCell.Column
If 行 <> 4 And 桁 <> 2 Then
MsgBox "列が違います"
End
Do Until ActiveCell.Value = "" '空白行になるまで繰り返す
ActiveCell.Value = ActiveCell.Value & "様" ' 前に付加する事も可
ActiveCell.Offset(1).Select
Loop
End If
End Sub
' **************************************************************
Sub 金種計算()
Dim 上端行 As Integer, 下端行 As Integer, 左端列 As Integer, 右端列 As Integer
Dim 現在行 As Integer, 現在列 As Integer, 計算列 As Range
Dim 枚数(9) As Integer, 金額 As Currency, 範囲(9) As Range
Dim 金種(9) As Currency, 合計(9) As Long 'currency
On Error GoTo エラー処理
金種(0) = 100000000 '1億円札ではありません
金種(0) = 10000
金種(0) = 5000
金種(0) = 1000
金種(0) = 500
金種(0) = 100
金種(0) = 50
金種(0) = 10
金種(0) = 5
金種(0) = 1
Set 計算列 = Application.InputBox
("計算したい金額の列のセルを指定して下さい", "金種の計算", Type:=8)
計算列.Select
現在行 = ActiveCell.Row
現在列 = ActiveCell.columun
Application.ScreenUpdating = False
Selection.CurrentRegion.Select
上端行 = Selection.Row
下端行 = 上端行 + Selection.Rows.Count - 1
Range(Cells(上端行, 現在列 + 1), Cells(上端行, 現在列 + 9)).Select
Selection.EntireColumn.Insert
Range(Cells(上端行, 現在列 + 1), Cells(下端行, 現在列 + 9)).Select
Selection.NumberFormat = "G/標準"
Selection.Style = "桁区切り"
For I = 上端行 + 1 To 下端行
金額 = Cells(I, 現在列).Value
If VarType(金額) = 6 Then
For J = I To 9
枚数(J) = Int((金額 Mod 金種(J - 1)) / 金種(J))
Cells(I, 現在列 + J).Value = 枚数(J)
Next J
End If
Next I
For k = 0 To 9
Set 範囲(k) = Range(Cells(上端行 + 1, 現在列 + k), Cells(下端行, 現在列 + k))
合計(k) = Application.Sum(範囲(k))
Cells(下端行 + 1, 現在列 + k).Value = 合計(k)
Next k
End Sub
' **************************************************************
Sub 空白行の削除()
Sheets("sheet1").Select
Application.ScreenUpdating = False
On Error Resume Next
With Cells
.SpecialCells(xlCellTypeConstants).EntireRow.Hidden = True
.SpecialCells(xlCellTypeFormulas).EntireRow.Hidden = True
.SpecialCells(xlCellTypeComments).EntireRow.Hidden = True
.SpecialCells(xlCellTypeVisible).EntireRow.Delete
.EntireRow.Hidden = False
End With
Application.ScreenUpdating = True
End Sub
ショートカット(近道) | 実 行 結 果 |
---|---|
Alt + Enter | セル内で改行する。 |
Ctrl + C | 選択されたセルをコピーする。 |
Ctrl + Home | ワークシートの先頭に移動する。 |
Ctrl + Shift + End | 選択範囲をデータが入力されている範囲の右下隅のセルまで拡張する。 |
Ctrl + V | セルを貼り付ける。 |
Ctrl + X | 選択されたセルを切り取る。 |
Ctrl + Z | 直前の操作の実行結果を元に戻す |
Ctrl + 方向キー | データ範囲の先頭行、末尾行、左端列、または右端列に移動する。 |
Del | 選択したセル範囲の内容をクリアする。 |
Home | 行の先頭に移動する。 |
ファンクション【F4】キー | 直前の動作を繰り返す。とっても便利です私は多用しています。 |
ファンクション【F1】キー | Office 「ヘルプ」アシスタントの吹き出しを表示する。 |