その他の操作まとめ [ExcelのVBA]
セル内の文字列を検索する
Private Sub CommandButton1_Click()
Dim obj As Range
' 「りんご」を検索
Set obj = ActiveSheet.Cells.Find("りんご")
If obj Is Nothing Then
Debug.Print "文字列は見つかりません。"
Else
' 見つかったセル情報
Debug.Print "行数:" & obj.Row & _
" 列数:" & obj.Column & _
" A1形式:" & obj.Address( _
RowAbsolute:=False, _
ColumnAbsolute:=False)
End If
End Sub
※Findの文字列にはワイルドカードが使用可能です。
※「RowAbsolute:=False」と「ColumnAbsolute:=False」は絶対参照の「$」マークを非表示にするという意味です。
[例]
[結果]
セル内の文字列を連続検索する
Private Sub CommandButton1_Click()
Dim obj As Range
Dim firstAddress As String
' 「りんご」を検索
Set obj = ActiveSheet.Cells.Find("りんご")
' 「りんご」が存在する場合
If Not obj Is Nothing Then
firstAddress = obj.Address
Do
' 見つかったセル情報
Debug.Print "行数:" & obj.Row & _
" 列数:" & obj.Column & _
" A1形式:" & obj.Address( _
RowAbsolute:=False, _
ColumnAbsolute:=False)
' 次を検索する
Set obj = Cells.FindNext(obj)
Loop While (Not obj Is Nothing) And (obj.Address <> firstAddress)
Else
Debug.Print "文字列は見つかりません。"
End If
End Sub
[例]
[結果]
セルにハイパーリンクを設定する
Private Sub CommandButton1_Click()
Dim link As Hyperlink
' A1のセルにハイパーリンクを設定する
Set link = ActiveSheet.Hyperlinks.Add( _
Anchor:=Range("A1"), _
TextToDisplay:="プチモンテ", _
Address:="http://www.petitmonte.com/")
' ハイパーリンクの削除
'link.Delete
' 全てのハイパーリンクの削除
'ActiveSheet.Hyperlinks.Delete
End Sub
ブック、シートの個数を取得する
Private Sub CommandButton1_Click() ' ワークブックの個数 Debug.Print Workbooks.Count ' (アクティブの)ワークシートの個数 Debug.Print ActiveWorkbook.Worksheets.Count End Sub
複数、全てのシートを選択する
Private Sub CommandButton1_Click()
' 全てのワークシートの選択
Worksheets.Select
' 複数のワークシートの選択
Worksheets(Array(1, 2, 3)).Select
Worksheets(Array("Sheet1", "Sheet2", "Sheet3")).Select
End Sub
「ファイルを開く」ダイアログを表示する
Private Sub CommandButton1_Click()
Dim filename As String
' ファイルを開くダイアログを表示する
filename = Application.GetOpenFilename( _
FileFilter:="Excelファイル,*.xls" & "," & _
"マクロ有効ファイル,*.xlsm" & "," & _
"全てのファイル,*.*")
If filename <> "False" Then
Range("A1").Value = filename
Else
Range("A1").Value = "キャンセル"
End If
End Sub
[結果]
「名前を付けて保存」ダイアログを表示する
Private Sub CommandButton1_Click()
Dim filename As String
' 名前を付けて保存ダイアログを表示する
filename = Application.GetSaveAsFilename( _
FileFilter:="Excelファイル,*.xls" & "," & _
"マクロ有効ファイル,*.xlsm" & "," & _
"全てのファイル,*.*")
If filename <> "False" Then
Range("A1").Value = filename
Else
Range("A1").Value = "キャンセル"
End If
End Sub
[結果]
シートをズームする
Private Sub CommandButton1_Click() ' シート1をアクティブにする Sheet1.Activate ' アクティブウインドウのズームを200%にする ActiveWindow.Zoom = 200 End Sub
確認ダイアログを非表示にする
Private Sub CommandButton1_Click() ' 確認ダイアログを非表示にする Application.DisplayAlerts = False ... 確認ダイアログが表示される処理 ' 確認ダイアログを表示する設定にする(デフォルトはTrue) Application.DisplayAlerts = True End Sub
画面の描画を停止する
重い処理を実行する時などに使用します。
Private Sub CommandButton1_Click() ' 画面の描画を停止する Application.ScreenUpdating = False ... 重い処理 ' 画面の描画を再開する (デフォルトはTrue) Application.ScreenUpdating = True End Sub
※「シート.Visible = False」でシートを非表示にする方法もあります。
シート全体をクリアする
Private Sub CommandButton1_Click()
' シート全体をクリアする
Worksheets("Sheet1").Cells.Clear
End Sub
VBAの固有操作
[セルの操作]
セルの値/計算式を設定する
セルのフォントを設定する
セルの背景色/網掛けを設定する
セルの文字配置を設定する
セルの表示形式を設定する
セルに罫線を設定する
セルの選択/コピー/貼り付け/切り取り/削除/クリア
セルの結合/結合の解除をする
セルにコメントを追加/削除する
シートの保護とセルのロック解除をする
セルの値をソートする
[テーブル/グラフ/ピボットテーブル]
テーブルの作成/操作
グラフの作成/操作
ピボットテーブルの作成/操作
[ワークシート]
シートの追加/移動/コピー/削除/表示/印刷
ワークシートのイベント
[ワークブック]
ブックを開く/追加/上書き/名前保存/PDFの作成
ワークブックのイベント
[その他]
その他の操作まとめ
エクセル講座のクイックリンク
スポンサーリンク
関連記事
公開日:2015年07月23日 最終更新日:2015年07月26日
記事NO:01236
プチモンテ ※この記事を書いた人
![]() | |
![]() | 💻 ITスキル・経験 サーバー構築からWebアプリケーション開発。IoTをはじめとする電子工作、ロボット、人工知能やスマホ/OSアプリまで分野問わず経験。 画像処理/音声処理/アニメーション、3Dゲーム、会計ソフト、PDF作成/編集、逆アセンブラ、EXE/DLLファイルの書き換えなどのアプリを公開。詳しくは自己紹介へ |
| 🎵 音楽制作 BGMは楽器(音源)さえあれば、何でも制作可能。歌モノは主にロック、バラード、ポップスを制作。歌詞は抒情詩、抒情的な楽曲が多い。楽曲制作は🔰2023年12月中旬 ~ | |









