【新発想】ノーコードでExcelを自動化する方法

ChatGPTより速い、VBAマクロ作成アプリ NoCodeVBA

MENU

複数シートの、離れたセルの値を、1枚のシートにまとめる

無料アプリで、すぐにエクセルVBAマクロを作成できます。

例として、アプリで「複数シートの、離れたセルの値を、1枚のシートにまとめる」VBAマクロを作成します。

(ページの末尾に、VBAコード掲載)

処理のイメージ

事例

4枚のシートにある、離れたセルの名前、社員番号、基本給などを1枚のシートにまとめます。



マクロを実行すると、離れたセルの値がリスト化されました。

 

アプリの設定

アプリのトップページ

 ⇒▼シート

 ⇒【ツール】複数シートの、特定セルの値を、1枚のシートにまとめる

【ポイント】

■ 見出しの左セルと、データの左上セルが、重ならないように注意してください。

表示されるVBAコード 

アプリで作成されたコードを、VBE画面に貼り付ければ、マクロの完成です。

Sub デモ_124() '複数シートの、特定セルの値を、1枚のシートにまとめる
 Application.ScreenUpdating = False ' 画面描画を停止
Application.DisplayAlerts = False  ' 警告表示を停止

'◆見出しを入れる
Dim 見出し As Variant
見出し = Split("名前,社員番号,基本給,残業手当,住宅手当,交通費", ",")
Sheets("まとめ").Select
Range("a1").Resize(1, UBound(見出し) + 1) = 見出し
'◆見出しを太字に
Range("a1").Resize(1, UBound(見出し) + 1).Font.Bold = True
'◆見出しを中央揃えに
Range("a1").Resize(1, UBound(見出し) + 1).HorizontalAlignment = xlCenter
'◆見出しの背景色をグレー
Range("a1").Resize(1, UBound(見出し) + 1).Interior.Color = RGB(231, 230, 230)
'◆シートごとに処理をする
Dim アドレス As Variant, 配列2次元(), 行 As Long
Dim シート As Worksheet
For Each シート In Worksheets
    If シート.Name <> "まとめ" Then
        Call デモ_124_メイン処理(アドレス, 配列2次元, シート, 行)
    End If
Next シート
 '◆2次元の行列を入れ替えて、貼り付け
Sheets("まとめ").Range("a2").Resize(行, UBound(アドレス) + 1) = Application.Transpose(配列2次元)
'◆罫線を入れる
Sheets("まとめ").Range("a2").CurrentRegion.Borders.LineStyle = True
'◆数字にカンマをいれる
On Error Resume Next
Sheets("まとめ").Range("a2").CurrentRegion.SpecialCells(xlCellTypeConstants, xlNumbers).Style = "Comma [0]"
End Sub

 

 

Sub デモ_124_メイン処理(アドレス As Variant, 配列2次元, シート As Worksheet, 行 As Long)
'◆対象セルの値で、リストを作る
Dim 列 As Long, セル As Variant
    行 = 行 + 1
    アドレス = Split("b1,b3,b5,e1,e3,e5", ",")
    '2次元側に「行」をいれて、要素数を変更
    ReDim Preserve 配列2次元(1 To UBound(アドレス) + 1, 1 To 行)
    For Each セル In アドレス
            列 = 列 + 1
            配列2次元(列, 行) = シート.Range(セル).Value
    Next セル
    列 = 0
Application.DisplayAlerts = True   ' 警告表示を再開
Application.ScreenUpdating = True  ' 画面描画を再開
End Sub

マクロを使うメリット

手作業で数分かかる作業が、1秒で終わります。

ぜひ、アプリをご利用ください。

 

アプリはこちらから↓↓↓↓ 

nocodevba.herokuapp.com