中級講座エクセルVBA(マクロ)

Описание к видео 中級講座エクセルVBA(マクロ)

ディクショナリーを使って重複したデータを削除して、出現回数をワークシートに書き出すということを勉強しました。今度は、その処理を複数のワークシートに処理してみましょう!
動画と同じ勉強ができるようにエクセルファイルとPDFのテキストファイルがダウンロードできます。チャレンジしてみよう!できることからコツコツそれが最良の勉強方法です。

動画中に出てくるプログラム:
Left,Add,ForEachNext
※動画はエクセル2021で作成させていますが、古いバージョンのエクセルでも対応できると思います。

00:00 本日のダイジェスト
00:14 本日の講座内容
00:24 複数のシートとディクショナリー
06:00 コレクションにワークシートを追加
08:36 本日の総括と今後の予定など

索引Webページを作成しました。調べたいこと・復習したい時に活用してみてね。↓
https://www.pasoz.com/youtube_m.html

サンプルページ(第130回用)↓
ダウンロードExcelファイル
https://www.pasoz.com/youtube_sample/...

テキスト・練習問題PDF(第129回用)
https://www.pasoz.com/vba/PDF/texts_1...

コードのコピーはこちらから↓
----------------------------
Sub test130()

Dim name_all As New Dictionary
Dim worksheet_all As New Collection
Dim ws As Worksheet

'コレクションにワークシート(Sheetのみ)を追加
For Each ws In Worksheets
If Left(ws.Name, 5) = "Sheet" Then
worksheet_all.Add ws
End If
Next ws

'ワークシートSheet1~5まで繰り返す
For Each ws In worksheet_all

Dim area As Range
Set area = ws.Range("a1").CurrentRegion.Cells

Dim cell As Range

'ディクショナリーに追加(名前、回数)
For Each cell In area
If name_all.Exists(cell.Value) = True Then
name_all(cell.Value) = name_all(cell.Value) + 1
Else
name_all.Add cell.Value, 1
End If
Next cell
Next ws

'ディクショナリーのデータを合計ワークシートに追加
Dim ws6 As Worksheet
Set ws6 = Worksheets("合計")

Dim i As Long
For i = 0 To name_all.count - 1
ws6.Cells(i + 2, 1) = name_all.Keys(i)
ws6.Cells(i + 2, 2) = name_all.Items(i)
Next i


End Sub

----------------------------
サブチャンネル
スクラッチ劇場 Scratch Theatre
   / @scratch_theatre  

中級講座エクセルVBA#123 【連想配列】実践向き!|一覧表と出現回数を1発で!
   • 中級講座エクセルVBA#123 【連想配列】実践向き!|一覧表と出現回数を...  

マイクロソフト公式「Microsoft Learn」↓
https://learn.microsoft.com/ja-jp/

マイクロソフト公式VBA関数一覧↓
https://learn.microsoft.com/ja-jp/off...

#マクロ,#ExcelVBA,#vba初心者

Комментарии

Информация по комментариям в разработке