#142 2013年(平成25年)大阪府産業連関表における最終需要部門の推計(その2)
投稿#141から、2013年(平成25年)大阪府産業連関表における最終需要部門の推計に取り掛かっています。
今回の投稿も、投稿#141に引き続き、最終需要部門の推計についてです。
(6)生産者製品在庫純増の推計
推計方法の確認
製造業部門については、工業統計を利用した。その他の部門は、全国延長表の生産者在庫純増額を、生産者の対全国比で按分した。
大阪府総務部統計課「平成25年(2013年)大阪府産業連関表(延長表)報告書」より引用
生産者製品在庫純増額推計シートの作成
次項の(7)半製品・仕掛品在庫純増の推計にも使えるような推計シートを作成します。VBAのコードは、以下のようになります。
Sub 在庫純増額推計用新規ワークシート作成()
' 結合小分類を読み込んで、部門1個毎に新規ワークシートを作成する
Dim bunruiCode As String '分類コード
Dim bumonmei As String '産業分類名
Dim prostock As Long '生産者製品在庫純増額
Dim semi As Long '半製品・仕掛品在庫純増額
Dim wbOrg As Worksheet '転記元ワークシート
Dim wbDes AS Workbook '転記先ワークシート
Dim wSheet As Worksheet '新規追加ワークシート
Dim i As Integer 'カウンタ変数
Const FirstRow = 3 '転記開始行番号
Const LastRow = 192 '転記終了行番号
Const ProColumn = 405 '生産者製品在庫純増額の列番号
Const SemiColumn = 406 '半製品・仕掛品在庫純増額の列番号
Set wbOrg = Workbooks("最終需要推計シート_平成25年大阪府産業連関表.ods").Worksheets("全国延長表一般政府消費支出統合")
Set wbDes = Workbooks("平成25年大阪府在庫純増額推計.ods")
For i = FirstRow To LastRow
bunruiCode = wbOrg.Cells(i, 1)
bumonmei = wbOrg.Cells(i, 2)
prostock = wbOrg.Cells(i, ProColumn)
semi = wbOrg.Cells(i, SemiColumn)
If prostock <> 0 Or semi <> 0 Then
' 最後尾にシートを追加
Set wSheet = wbDes.Worksheets.Add(before:=Worksheets(Worksheets.Count))
' シート名を変更
wSheet.Name = bunruiCode
' 列名を入力
wSheet.Columns(1).NumberFormatLocal = "@"
wSheet.Columns(2).NumberFormatLocal = "@"
wSheet.RANGE("A1").VALUE = "code"
wSheet.RANGE("B1").VALUE = "産業分類"
wSheet.RANGE("C1").VALUE = "製造品年初在庫額"
wSheet.RANGE("D1").VALUE = "製造品年末在庫額"
wSheet.RANGE("E1").VALUE = "生産者製品在庫純増額"
wSheet.RANGE("F1").VALUE = "半製品仕掛品年初在庫額"
wSheet.RANGE("G1").Value = "半製品仕掛品年末在庫額"
wSheet.RANGE("H1").Value = "半製品・仕掛品在庫純増額"
wSheet.RANGE("A2").Value = bunruiCode
wSheet.RANGE("B2").Value = bumonmei
End If
Next
End Sub
実際の推計
製造業部門は、大阪府総務部統計課「大阪の工業」の平成25年調査の産業別統計表のデータを利用しました。
上記の表は、産業祭分類別に
- 製造品年初在庫額
- 製造品年末在庫額
- 半製品仕掛品年初在庫額
- 半製品仕掛品年末在庫額
のデータ(単位:万円)が掲載されています。なので、下式により生産者製品在庫純増額、半製品・仕掛品在庫純増額を推計しました。
$$
生産者製品在庫純増額 = (製造品年初在庫額 - 製造品年末在庫額) / 100
$$
$$
半製品・仕掛品在庫純増額 = (半製品仕掛品年初在庫額 - 半製品仕掛品年末在庫額) / 100
$$
(8)流通在庫純増
推計方法の確認
全国延長表の流通在庫純増を、域内需要額から在庫純増を除いた額の対全国比で按分した。
大阪府総務部統計課「平成25年(2013年)大阪府産業連関表(延長表)報告書」より引用
実際の推計
最初、「域内需要額」という用語が理解できませんでした。
おそらく、全国延長表で言うところの「7900 国内需要合計」、または、大阪府延長表で言うところの「7900 府内需要合計」のことを意味していると解釈しました。
その理解でいくと、「域内需要額から在庫純増を除いた額」というのは、以下の式で表される額と等しいのではないかと考えました。
$$
中間需要(内生部門)合計 + 家計外消費支出(列) + 家計消費支出 + 一般政府消費支出 + 一般政府消費支出(社会資本減耗分) + 総固定資本形成(公的、民間)
$$
流通在庫純増額を推計し、転記するVBAのコードは、以下のようになります。
Sub 流通在庫純増推計()
Dim OrgWs As Worksheet '転記元ワークシート
Dim DesWs As Worksheet '転記先ワークシート
Dim deast As Long '全国延長表の流通在庫純増額
Dim domesum As Long '国内需要額から在庫純増を除いた額
Dim osakasum As Long '府内需要額から在庫純増を除いた額
Dim ratio As Double '対全国比
Dim i As Integer 'カウンタ変数
Dim j As Integer 'カウンタ変数
Const FirstRow = 3 '転記開始行番号
Const LastRow = 192 '転記終了行番号
Const JapanDeastColumn = 407 '全国延長表の流通在庫純増の列番号
Const OsakaDeastColumn = 203 '大阪府延長表の流通在庫純増の列番号
Const OsakaFirstColumn = 193 '大阪延長表の内生部門計の列番号
Const OsakaLastColumn = 200 '大阪府延長表の総固定資本形成(民間)の列番号
Const JapanFirstColumn = 398 '全国延長表の内生部門計の列番号
Const JapnLastColumn = 404 '全国延長表の総固定資本形成(民間)の列番号
Set OrgWs = Workbooks("最終需要推計シート_平成25年大阪府産業連関表.ods").Worksheets("全国延長表一般政府消費支出統合")
Set DesWs = Workbooks("最終需要推計シート_平成25年大阪府産業連関表.ods").Worksheets("府内在庫純増額推計")
For i = FirstRow To LastRow
deast = OrgWs.Cells(i, JapanDeastColumn)
domesum = 0
osakasum = 0
For j = JapanFirstColumn To JapnLastColumn
domesum = domesum + OrgWs.Cells(i, j)
Next
For j = OsakaFirstColumn To OsakaLastColumn
osakasum = osakasum + DesWs.Cells(i, j)
Next
If domesum = 0 Then
Goto Continue
Else
ratio = osakasum / domesum
DesWs.Cells(i, OsakaDeastColumn) = deast * ratio
End If
Continue:Next
End Sub
(9)原材料在庫純増
推計方法の確認
全国延長表の原材料在庫純増額を、域内中間需要額の対全国比で按分した。
実際の推計
「域内中間需要額」とは、「域内中間投入額」と等しい、つまり、「内生部門計」の額の対全国比で按分すれば良いと判断しました。
よって、推計を行うVBAのコードは、以下のようになります。
Sub 原材料在庫純増推計()
Dim OrgWs As Worksheet '転記元ワークシート
Dim DesWs As Worksheet '転記先ワークシート
Dim japanstock As Long '全国延長表の原材料在庫純増額
Dim osakastock As Long '大阪府延長表の原材料在庫純増
Dim japanmid As Long '全国延長表の中間需要額
Dim osakamid As Long '大阪府延長表の中間需要額
Dim ratio As Double '対全国比
Dim i As Integer 'カウンタ変数
Dim j As Integer 'カウンタ変数
Const FirstRow = 3 '転記開始行番号
Const LastRow = 192 '転記終了行番号
Const JapanStockColumn = 408 '全国延長表の原材料在庫純増額列番号
Const JapanMidColumn = 398 '全国延長表の中間需要額の列番号
Const OsakaStockColumn = 204 '大阪府延長表の原材料在庫純増額列番号
Const OsakaMidColumn = 193 '大阪府延長表の流通在庫純増の列番号
Set OrgWs = Workbooks("最終需要推計シート_平成25年大阪府産業連関表.ods").Worksheets("全国延長表一般政府消費支出統合")
Set DesWs = Workbooks("最終需要推計シート_平成25年大阪府産業連関表.ods").Worksheets("府内在庫純増額推計")
For i = FirstRow To LastRow
japanstock = OrgWs.Cells(i, JapanStockColumn)
japanmid = OrgWs.Cells(i, JapanMidColumn)
osakamid = DesWs.Cells(i, OsakaMidColumn)
If japanmid = 0 Then
DesWs.Cells(i, OsakaStockColumn) = 0
Goto Continue
Else
ratio = osakamid / japanmid
osakastock = japanstock * ratio
DesWs.Cells(i, OsakaStockColumn) = osakastock
End If
Continue:Next
End Sub
“#142 2013年(平成25年)大阪府産業連関表における最終需要部門の推計(その2)” に対して1件のコメントがあります。