#153 工業統計調査のデータを加工する
今回の投稿は、主に製造業の府内生産額の推計で使用する経済産業省「工業統計調査」のデータの加工についてです。
データのダウンロードと不要行・列の削除
大阪府の場合
経済産業省「工業統計調査 確報 平成26年確報 」の表番号 6-03「3.都道府県別産業細分類別統計表」から、大阪府のデータをダウンロードします。
次に、不要な列及び行を削除します。
削除後のワークシートを「Sheet1」とします。
全国の場合
経済産業省「工業統計調査 確報 平成26年確報 表番号 6-01 表題 1.全国産業細分類別統計表」から、全国のデータをダウンロードします。
次に、不要な列及び行を削除します。
削除後のワークシートを「Sheet1」とします。
データの加工
列名を左から以下のように指定した新たなワークシート(Sheet2)を作成します。
- code
- 産業分類
- 製造品出荷額等(万円)
大阪府の場合を例に取り、Sheet1から上記に合致したデータを転記するVBAのコードは、以下のようになります。
Sub コードと産業分類名を分割して別々の列に格納()
Dim wsOrg As Worksheet
Dim wsDes As Worksheet
Dim i As Integer
Dim num As Long
Dim code As String
Dim pname As String
Set wsOrg = Workbooks("平成26年工業統計調査_製造品出荷額等_大阪府_細分類.ods").Worksheets("Sheet1")
Set wsDes = Workbooks("平成26年工業統計調査_製造品出荷額等_大阪府_細分類.ods").Worksheets("Sheet2")
For i = 2 To 546
num = Val(wsOrg.Cells(i, 1).Value)
If num < 1000 Then
code = "0" & CStr(num)
Else
code = CStr(num)
End If
pname = Replace(wsOrg.Cells(i, 1).Value, code, "")
wsDes.Cells(i, 1).NumberFormatLocal = "@" ' セルの書式を「文字」に設定
wsDes.Cells(i, 1).Value = code
wsDes.Cells(i, 2).Value = pname
wsDes.Cells(i, 3).Value = wsOrg.Cells(i, 2).Value
Next
End Sub