This commit is contained in:
ykh
2023-10-27 23:05:50 +09:00
parent 0b976ad2ab
commit ec0e3013c6
50 changed files with 4751 additions and 1383 deletions

View File

@@ -2,6 +2,8 @@
Dim fn As String = ""
Dim silentmode As Boolean = False
Dim column As Integer = 10
Dim processfile As String
Public Sub New()
' 이 호출은 디자이너에 필요합니다.
@@ -10,12 +12,14 @@
' InitializeComponent() 호출 뒤에 초기화 코드를 추가하십시오.
End Sub
Public Sub New(_file As String, Optional silent As Boolean = False)
Public Sub New(_file As String, writecolumn As Integer, processfilename As String, Optional silent As Boolean = False)
' 이 호출은 디자이너에 필요합니다.
InitializeComponent()
fn = _file
silentmode = silent
column = writecolumn
processfile = processfilename
' InitializeComponent() 호출 뒤에 초기화 코드를 추가하십시오.
End Sub
@@ -23,14 +27,15 @@
Private Sub Frm_Upload_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
' Me.Hide()
Application.DoEvents()
'Application.DoEvents()
LoadFile()
'MakeGraphTable()
MakeData()
If fn <> "" Then
Try
If FpSpread1.SaveExcel(fn) Then
If FpSpread1.SaveExcel(fn, FarPoint.Excel.ExcelSaveFlags.NoFlagsSet) Then
If silentmode = False Then
MsgBox("다음파일이 생성되었습니다" + vbCrLf + fn, MsgBoxStyle.Information, "확인")
End If
@@ -56,6 +61,7 @@
Private Sub LoadFile()
Dim fn As String = AppDomain.CurrentDomain.BaseDirectory + "\upload.xlsx"
If column > 10 Then fn = Me.fn
If Not System.IO.File.Exists(fn) Then
MsgBox("업로드샘플파일(" + fn + ")가 존재하지 않습니다", MsgBoxStyle.Critical, "확인")
Return
@@ -72,7 +78,7 @@
Private Sub MakeData()
'//결과데이터에서 자료를 추출하고 그 값을 넣는다
Dim DataColumnIndex As Integer = 10
Dim DataColumnIndex As Integer = Me.column
Dim Row As Integer = 1
Dim DsReport As New DSR
@@ -178,7 +184,7 @@
'//연간 CO2발생량
Dim StartCode As Integer = 79 '//76
Dim StartCode As Integer = 81 '//76
Dim CO2_1, CO2_2, CO2_3, CO2_4, CO2_5 As Decimal
CO2_1 = Math.Round(RData("410", StartCode + 0), 1)
CO2_2 = Math.Round(RData("410", StartCode + 7), 1)
@@ -195,11 +201,12 @@
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 합계.ToString() : Row += 1 '//환기
'//단위면적당 CO2발생량
CO2_1 = Math.Round(RData("410", StartCode + 6), 1)
CO2_2 = Math.Round(RData("410", StartCode + 14), 1)
CO2_3 = Math.Round(RData("410", StartCode + 21), 1)
CO2_4 = Math.Round(RData("410", StartCode + 24), 1)
CO2_5 = Math.Round(RData("410", StartCode + 27), 1)
StartCode = 79 '//76
CO2_1 = Math.Round(RData("410", StartCode + 8), 1)
CO2_2 = Math.Round(RData("410", StartCode + 16), 1)
CO2_3 = Math.Round(RData("410", StartCode + 23), 1)
CO2_4 = Math.Round(RData("410", StartCode + 26), 1)
CO2_5 = Math.Round(RData("410", StartCode + 29), 1)
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = CO2_1.ToString : Row += 1 '//난방
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = CO2_2.ToString : Row += 1 '//냉방
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = CO2_3.ToString : Row += 1 '//급탕
@@ -301,16 +308,16 @@
'//입력존수값이 없는것은 기본값 1로 처리를 한다
If String.IsNullOrWhiteSpace(drZOne.입력존의수) Then drZOne.입력존의수 = "1"
If Not IsNumeric(drZOne.입력존의수) Then drZOne.입력존의수 = "1"
Dim 존수 As Integer = TOSG(drZOne.입력존의수)
If 존수 < 1 Then Continue For
Dim 존수2 As Integer = TOSG(drZOne.입력존의수)
If 존수2 < 1 Then Continue For
If Not IsNumeric(drZOne.면적) Then drZOne.면적 = "0"
If CInt(drZOne.면적) = 0 Then
MsgBox("입력존(" + drZOne.설명 + ") 의 면적이 입력되지 않았습니다", MsgBoxStyle.Critical, "확인")
Continue For
End If
기밀성능_면적합 += (존수 * drZOne.면적)
기밀성능_침기율면적합 += (drZOne.침기율 * (존수 * drZOne.면적))
기밀성능_면적합 += (존수2 * drZOne.면적)
기밀성능_침기율면적합 += (drZOne.침기율 * (존수2 * drZOne.면적))
Next
Dim 기밀성능 As Decimal = 0
If 기밀성능_면적합 <> 0 Then 기밀성능 = 기밀성능_침기율면적합 / 기밀성능_면적합
@@ -363,14 +370,14 @@
If Not IsNumeric(drzone.면적) Then drzone.면적 = "0"
Dim 존수 As Integer = 0
Dim 존수2 As Integer = 0
If IsNumeric(drzone.입력존의수) Then
존수 = CInt(drzone.입력존의수)
존수2 = CInt(drzone.입력존의수)
Else
존수 = 1
존수2 = 1
End If
If IsNumeric(drzone.면적) Then
면적 = drzone.면적 * 존수
면적 = drzone.면적 * 존수2
Else
면적 = 0
End If
@@ -470,10 +477,10 @@
Dim 냉난방방식_난방 As String = ""
For Each dr난방 As DS.tbl_nanbangkikiRow In DSET1.tbl_nanbangkiki.Select("code <> '0'")
Dim filter As String = String.Format("code <> '0' and 열생산난방생산기기='{0}' or 공조난방생산기기='{0}'", dr난방.code)
Dim 존수 As Integer = 0
Dim 존수3 As Integer = 0
For Each dr존 As DS.tbl_zoneRow In DSET1.tbl_zone.Select(filter)
If Not IsNumeric(dr존.입력존의수) Then dr존.입력존의수 = "1"
존수 += CInt(dr존.입력존의수)
존수3 += CInt(dr존.입력존의수)
Next
If Not IsNumeric(dr난방.보일러정격출력) Then dr난방.보일러정격출력 = "0"
@@ -482,7 +489,7 @@
Dim 개별식형태 As Boolean = dr난방.개별기기적용
If Not 개별식형태 AndAlso 존수 = 1 Then 개별식형태 = True '//입력존이 1이면 개별식형태로 한다
If Not 개별식형태 AndAlso 존수3 = 1 Then 개별식형태 = True '//입력존이 1이면 개별식형태로 한다
If 냉난방방식_난방 = "" Then
@@ -501,18 +508,18 @@
최대값 = Math.Max(TOSG(dr난방.보일러정격출력), TOSG(dr난방.열교환기정격출력))
최대값 = Math.Max(최대값, TOSG(dr난방.히트난방용량))
최대값 *= 존수
최대값 *= 존수3
펌프동력합 += TOSG(dr난방.펌프동력) * 존수
펌프동력합 += TOSG(dr난방.펌프동력) * 존수3
If dr난방.열생산기기방식 = "히트펌프" Then
난방용량합 += TOSG(dr난방.히트난방용량) * 존수
If dr난방.히트연료 = "전기" Then 난방용량합_전기 += TOSG(dr난방.히트난방용량) * 존수
난방용량합 += TOSG(dr난방.히트난방용량) * 존수3
If dr난방.히트연료 = "전기" Then 난방용량합_전기 += TOSG(dr난방.히트난방용량) * 존수3
ElseIf dr난방.열생산기기방식 = "전기보일러" Then
난방용량합 += TOSG(dr난방.보일러정격출력) * 존수
난방용량합_전기 += TOSG(dr난방.보일러정격출력) * 존수
난방용량합 += TOSG(dr난방.보일러정격출력) * 존수3
난방용량합_전기 += TOSG(dr난방.보일러정격출력) * 존수3
ElseIf dr난방.열생산기기방식 = "지역난방" Then
난방용량합 += TOSG(dr난방.열교환기정격출력) * 존수
난방용량합 += TOSG(dr난방.열교환기정격출력) * 존수3
Else
난방용량합 += 최대값 '//모를경우에는 해당값중 최대값을 사용함(임의처리함 arin)
End If
@@ -561,16 +568,16 @@
Dim 냉난방방식_냉방 As String = ""
For Each dr냉방 As DS.tbl_nangbangkikiRow In DSET1.tbl_nangbangkiki.Select("code <> '0'")
Dim filter As String = String.Format("열생산냉방생산기기='{0}' or 공조냉방생산기기='{0}'", dr냉방.code)
Dim 존수 As Integer = 0
Dim 존수4 As Integer = 0
For Each dr존 As DS.tbl_zoneRow In DSET1.tbl_zone.Select(filter)
If Not IsNumeric(dr존.입력존의수) Then dr존.입력존의수 = "1"
존수 += CInt(dr존.입력존의수)
존수4 += CInt(dr존.입력존의수)
Next
If Not IsNumeric(dr냉방.냉동기용량) Then dr냉방.냉동기용량 = "0"
Dim 개별식형태 As Boolean = dr냉방.개별기기적용
If Not 개별식형태 AndAlso 존수 = 1 Then 개별식형태 = True '//입력존이 1이면 개별식형태로 한다
If Not 개별식형태 AndAlso 존수4 = 1 Then 개별식형태 = True '//입력존이 1이면 개별식형태로 한다
If 냉난방방식_냉방 = "" Then
냉난방방식_냉방 = IIf(개별식형태, "개별식", "중앙식")
@@ -583,9 +590,9 @@
Dim 최대값 As Decimal = 0
If dr냉방.개별기기적용 Then
최대값 = TOSG(dr냉방.냉동기용량) * 존수
냉방용량합 += TOSG(dr냉방.냉동기용량) * 존수
If dr냉방.냉동기방식 = "압축식" Then 냉방용량합_전기 += TOSG(dr냉방.냉동기용량) * 존수
최대값 = TOSG(dr냉방.냉동기용량) * 존수4
냉방용량합 += TOSG(dr냉방.냉동기용량) * 존수4
If dr냉방.냉동기방식 = "압축식" Then 냉방용량합_전기 += TOSG(dr냉방.냉동기용량) * 존수4
Else
최대값 = TOSG(dr냉방.냉동기용량)
냉방용량합 += TOSG(dr냉방.냉동기용량)
@@ -1106,6 +1113,315 @@
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 단위면적당신재생1차에너지합_offsite.ToString("N1") : Row += 1
'//추가작업 230724
If column < 11 Then Return
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = processfile : Row += 1
'//벽체면적
Dim WallArea As Decimal = 0
Dim WindowArea As Decimal = 0
Dim 열관류율합 As Double
Dim 존수 As Integer = 0
Dim 비연결 As Integer = 0
Dim 비연결존 As String = ""
Dim 방위목록() As String = New String() {"수평", "", "남동", "", "북동", "", "북서", "", "남서"}
For Each 방위 As String In 방위목록
Dim filter As String = "code <> '0' and (건축부위방식='외벽' or 건축부위방식 ='외부창' or 건축부위방식='내벽' or 건축부위방식 ='내부창')"
If 방위 <> "" Then filter += " and 방위='" + 방위 + "'"
Dim 면데이터() As DS.tbl_myounRow = DSET1.tbl_myoun.Select(filter)
Dim 열관없는갯수 As Integer = 0
Try
For Each Dr입력면 As DS.tbl_myounRow In 면데이터
Dim 열관 As Single = 0
If Dr입력면.열관류율2 = "0" OrElse Dr입력면.열관류율2 = "" Then
열관없는갯수 += 1
End If
Dim Dryk1 As DS.tbl_ykRow = Nothing
If Dr입력면.열관류율2 <> "0" Then '
Dryk1 = DSET1.tbl_yk.Select("code='" & Dr입력면.열관류율2 & "'")(0)
열관 = TOSG(Dryk1("열관류율").ToString)
Else '//선택안된경우
열관 = TOSG(Dr입력면.열관류율)
End If
Dim 존코드 As String = Dr입력면.존분류
Dim dr존() As DS.tbl_zoneRow = DSET1.tbl_zone.Select("code='" + 존코드 + "'")
If dr존.GetUpperBound(0) = -1 Then
존수 = 1
Else
If IsNumeric(dr존(0).입력존의수) Then
존수 = CInt(dr존(0).입력존의수)
Else
존수 = 1
End If
End If
Select Case Dr입력면.건축부위방식
Case "외벽"
열관류율합 += 열관 * 1 * TOSG(Dr입력면.건축부위면적) * 존수
Case "내벽"
열관류율합 += 열관 * 0.7 * TOSG(Dr입력면.건축부위면적) * 존수
Case "외부창"
열관류율합 += 열관 * 1 * TOSG(Dr입력면.건축부위면적) * 존수
Case "내부창"
열관류율합 += 열관 * 0.8 * TOSG(Dr입력면.건축부위면적) * 존수
End Select
'// Debug.WriteLine(Dr입력면.열관류율2 + "/" + Dr입력면.code + "/" + 열관.ToString() + "/" + Dr입력면.설명 + "/" + Dr입력면.건축부위면적.ToCharArray() + "/" + 존수.ToString() + "/" + 열관류율합.ToString(), True)
If Dryk1 Is Nothing Then
비연결 += 1
'//사용한 존
If dr존 Is Nothing Then
Else
비연결존 = dr존(0).설명 + "" + Dr입력면.설명
End If
'//열관류 선택안된경우
Select Case Dr입력면.건축부위방식
Case "외벽"
If Dr입력면.방위 <> "수평" AndAlso Dr입력면.방위 <> "일사없음" AndAlso Dr입력면.방위 <> "(없음)" Then
WallArea = WallArea + TOSG(Dr입력면.건축부위면적) * 존수
End If
Case "내벽" '
WallArea = WallArea + TOSG(Dr입력면.건축부위면적) * 존수
Case "외부창"
If Dr입력면.방위 <> "수평" AndAlso Dr입력면.방위 <> "일사없음" AndAlso Dr입력면.방위 <> "(없음)" Then
WindowArea = WindowArea + TOSG(Dr입력면.건축부위면적) * 존수
End If
Case "내부창"
WindowArea = WindowArea + TOSG(Dr입력면.건축부위면적) * 존수
End Select
Else
Dim 면형태이름 As String = Get_CName("1088", Dryk1.면형태)
Select Case 면형태이름
Case "외벽(벽체)"
WallArea = WallArea + TOSG(Dr입력면.건축부위면적) * 존수
Case "내벽(벽체)"
WallArea = WallArea + TOSG(Dr입력면.건축부위면적) * 존수
Case "외부창"
If Dr입력면.방위 <> "수평" AndAlso Dr입력면.방위 <> "일사없음" AndAlso Dr입력면.방위 <> "(없음)" Then
WindowArea = WindowArea + TOSG(Dr입력면.건축부위면적) * 존수
End If
Case "내부창"
WindowArea = WindowArea + TOSG(Dr입력면.건축부위면적) * 존수
End Select
End If
'Debug.WriteLine(Dr입력면.code + ":wall=" + WallArea.ToString() + ",win=" + WindowArea.ToString())
Next
'For Each Dr입력면 As DS.tbl_myounRow In DSET1.tbl_myoun.Select("건축부위방식='외부창'")
' WindowArea = WindowArea + TOSG(Dr입력면.건축부위면적) * 존수
'Next
Catch ex As Exception
End Try
Next
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = WallArea.ToString("N1") : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = WindowArea.ToString("N1") : Row += 1
Try
창및문면적비 = WindowArea / (WallArea + WindowArea) * 100
Catch ex As Exception
창및문면적비 = 0 '//게삭과정에 오류가낫다면 0처리합니다.
End Try
If WallArea + WindowArea = 0 Then
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "0 %" : Row += 1
Else
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 창및문면적비.ToString("N1") : Row += 1
End If
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 창열관류율_평균.ToString("N3") : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 창열관류율_남.ToString("N3") : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 창열관류율_남동.ToString("N3") : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 창열관류율_동.ToString("N3") : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 창열관류율_북동.ToString("N3") : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 창열관류율_북.ToString("N3") : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 창열관류율_북서.ToString("N3") : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 창열관류율_서.ToString("N3") : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 창열관류율_남서.ToString("N3") : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 일사에너지투과율_평균.ToString("N3") : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 일사에너지투과율_남.ToString("N3") : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 일사에너지투과율_남동.ToString("N3") : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 일사에너지투과율_동.ToString("N3") : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 일사에너지투과율_북동.ToString("N3") : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 일사에너지투과율_북.ToString("N3") : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 일사에너지투과율_북서.ToString("N3") : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 일사에너지투과율_서.ToString("N3") : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 일사에너지투과율_남서.ToString("N3") : Row += 1
'//난방기기 - 보일러중에 용량이 가장 큰
Dim 보일러목록() As DS.tbl_nanbangkikiRow = DSET1.tbl_nanbangkiki.Select("열생산기기방식='보일러'", "보일러정격출력 desc")
If 보일러목록 Is Nothing OrElse 보일러목록.Length < 1 Then
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
Else
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 보일러목록(0).보일러방식 : Row += 1
End If
보일러목록 = DSET1.tbl_nanbangkiki.Select("열생산기기방식='지역난방'", "열교환기정격출력 desc")
If 보일러목록 Is Nothing OrElse 보일러목록.Length < 1 Then
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
Else
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 보일러목록(0).지역난방방식 : Row += 1
End If
보일러목록 = DSET1.tbl_nanbangkiki.Select("열생산기기방식='히트펌프'", "히트난방용량 desc")
If 보일러목록 Is Nothing OrElse 보일러목록.Length < 1 Then
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
Else
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 보일러목록(0).히트난방용량 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 보일러목록(0).히트난방정격7 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 보일러목록(0).히트난방정격10 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 보일러목록(0).히트배관길이 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 보일러목록(0).히트펌프시스템종류 : Row += 1
End If
Dim 냉방기목록 = DSET1.tbl_nangbangkiki.Select("냉동기방식='압축식'", "냉동기용량 desc")
If 냉방기목록 Is Nothing OrElse 냉방기목록.Length < 1 Then
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
Else
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 냉방기목록(0).냉동기종류 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 냉방기목록(0).냉동기압축방식 : Row += 1
End If
냉방기목록 = DSET1.tbl_nangbangkiki.Select("냉동기방식='흡수식'", "냉동기용량 desc")
If 냉방기목록 Is Nothing OrElse 냉방기목록.Length < 1 Then
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
Else
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 냉방기목록(0).압축기제어방식 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 냉방기목록(0).열생산연결방식 : Row += 1
End If
냉방기목록 = DSET1.tbl_nangbangkiki.Select("냉동기방식='압축식' and 냉동기종류='실내공조시스템'", "냉동기용량 desc")
If 냉방기목록 Is Nothing OrElse 냉방기목록.Length < 1 Then
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
Else
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 냉방기목록(0).냉동기설비시스템 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 냉방기목록(0).제어방식 : Row += 1
End If
'//급탕기기로 연결된 자료
Dim 급탕기기대상 As DS.tbl_nanbangkikiRow = Nothing
Dim 급탕기기대상용량 As Decimal = 0
For Each dr As DS.tbl_nanbangkikiRow In DSET1.tbl_nanbangkiki.Rows
Dim cnt = 0
Dim 존목록() As DS.tbl_zoneRow = DSET1.tbl_zone.Select("code <> '0' and 열생산급탕생산기기='" & dr.code & "'")
For Each drow As DS.tbl_zoneRow In 존목록
Dim 입력존수문자 As Integer = drow.입력존의수
If IsNumeric(입력존수문자) = False Then 입력존수문자 = "1"
cnt += CInt(입력존수문자)
Next
If cnt > 0 Then
If dr.보일러정격출력 > 급탕기기대상용량 Then
급탕기기대상 = dr
급탕기기대상용량 = dr.보일러정격출력
End If
End If
Next
If 급탕기기대상 Is Nothing Then
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
Else
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 급탕기기대상.축열탱크방식 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 급탕기기대상.축열제척 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 급탕기기대상.펌프정격전력 : Row += 1
End If
Dim 태양광목록() As DS.tbl_newRow = DSET1.tbl_new.Select("기기종류='태양광'", "태양광모듈면적 desc")
If 태양광목록 Is Nothing OrElse 태양광목록.Length < 1 Then
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = "" : Row += 1
Else
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 태양광목록(0).태양광용량 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 태양광목록(0).태양광모듈효율 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 태양광목록(0).태양광모듈면적 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 태양광목록(0).태양광모듈기울기 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 태양광목록(0).태양광모듈방위 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 태양광목록(0).태양광모듈종류 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 태양광목록(0).태양광모듈적용타입 : Row += 1
End If
'//230804 에너지생산량 ` 1차 추가
Dim 에너지생산량_난방 As Decimal = 난방면적 + 난방면적_offsite + _
Result1.생산E(0).면적당생산량태양열_난방 + _
Result1.생산E(0).면적당생산량수열_난방 + _
Result1.생산E(0).면적당생산량지열_난방 + _
Result1.생산E(0).신재생면적당열생산량_난방
Dim 에너지생산량_냉방 As Decimal = 냉방면적 + 냉방면적_offsite + _
Result1.생산E(0).면적당생산량태양열_냉방 + _
Result1.생산E(0).면적당생산량수열_냉방 + _
Result1.생산E(0).면적당생산량지열_냉방 + _
Result1.생산E(0).신재생면적당열생산량_냉방
Dim 에너지생산량_급탕 As Decimal = 급탕면적 + 급탕면적_offsite + _
Result1.생산E(0).면적당생산량태양열_급탕 + _
Result1.생산E(0).면적당생산량수열_급탕 + _
Result1.생산E(0).면적당생산량지열_급탕 + _
Result1.생산E(0).신재생면적당열생산량_급탕
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 에너지생산량_난방 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 에너지생산량_냉방 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 에너지생산량_급탕 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 조명면적 + 조명면적_offsite : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 환기면적 + 환기면적_offsite : Row += 1
Dim multi As Decimal = 2.75
Dim 에너지생산량_난방_1차 As Decimal = (난방면적 + 난방면적_offsite) * multi + _
Result1.생산E(0).면적당생산량태양열_난방 + _
Result1.생산E(0).면적당생산량수열_난방 + _
Result1.생산E(0).면적당생산량지열_난방 + _
Result1.생산E(0).신재생면적당열생산량_난방
Dim 에너지생산량_냉방_1차 As Decimal = (냉방면적 + 냉방면적_offsite) * multi + _
Result1.생산E(0).면적당생산량태양열_냉방 + _
Result1.생산E(0).면적당생산량수열_냉방 + _
Result1.생산E(0).면적당생산량지열_냉방 + _
Result1.생산E(0).신재생면적당열생산량_냉방
Dim 에너지생산량_급탕_1차 As Decimal = (급탕면적 + 급탕면적_offsite) * multi + _
Result1.생산E(0).면적당생산량태양열_급탕 + _
Result1.생산E(0).면적당생산량수열_급탕 + _
Result1.생산E(0).면적당생산량지열_급탕 + _
Result1.생산E(0).신재생면적당열생산량_급탕
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 에너지생산량_난방_1차 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 에너지생산량_냉방_1차 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = 에너지생산량_급탕_1차 : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = (조명면적 + 조명면적_offsite) * multi : Row += 1
FpSpread1_Sheet1.Cells(Row, DataColumnIndex).Value = (환기면적 + 환기면적_offsite) * multi : Row += 1
End Sub
@@ -1116,6 +1432,382 @@
Return DR(0).M00
End Function
Dim DSR As New DSR
Private Sub MakeGraphTable()
DSR.TReqUse.Clear()
DSR.TReqUse.Merge(DSETR1.TReqUse)
If DSR.TReqUse.Rows.Count < 1 Then Return
Dim Dr As DSR.Graph_ReqRow
For Gubun As Short = 0 To 1
For mon As Short = 1 To 12
If Gubun = 0 Then '//6번
Dr = Me.DSR.Graph_Req.NewGraph_ReqRow
Dr.Gubun = "난방에너지요구량"
Dr.Mon = Format(mon, "0") & ""
Dr.Req = Math.Round(Result1.E요구량(mon).난방면적, 1)
Me.DSR.Graph_Req.Rows.Add(Dr)
Else '//11번
Dr = Me.DSR.Graph_Req.NewGraph_ReqRow
Dr.Gubun = "냉방에너지요구량"
Dr.Mon = Format(mon, "0") & ""
Dr.Req = Math.Round(Result1.E요구량(mon).냉방면적, 1)
Me.DSR.Graph_Req.Rows.Add(Dr)
End If
Next
Next
'//연간에너지요구량및소요량
'//Graph_requse gubun,type,
'1차에너지소요량 에너지소요량 에너지요구량
'신재생에너지(-57)
'난방에너지 106 91.87445415 56.14013248
'냉방에너지 155.3678094 119.8832527 40.83005443
'급탕에너지 42.6421498 14.21404993 14.6
'조명에너지 144.2220948 48.07403159 73.08380082
'환기에너지 61.68818331 20.56272777
Dim 신재생에너지 As Decimal
Dim 난방에너지 As Decimal
Dim 냉방에너지 As Decimal
Dim 급탕에너지 As Decimal
Dim 조명에너지 As Decimal
Dim 환기에너지 As Decimal
'Dim 합계 As Decimal
Dim 소요량1차_신재생 As Decimal = 0
Dim 소요량_신재생 As Decimal = 0
Dim 단위면적당신재생1차에너지합 As Decimal = 0
Dim 단위면적당신재생1차에너지합offsite As Decimal = 0
Dim 단위면적당1차에너소비량합 As Decimal = 0
Dim 에너지자립률offsite As Decimal = 0
Dim 에너지자립률 As Decimal = 0
Dim Dr2 As DSR.Graph_ReqUseRow
For Gubun As Short = 0 To 4
Select Case Gubun
Case 0 '//1차에너지소요량
Dim Sum As Decimal = (Result1.생산E(0).태양광전력생산량 + Result1.생산E(0).풍력전력생산량 + Result1.생산E(0).신재생열병합전력생산량) / (Result1.일차E소요량(0).난방전력 + Result1.일차E소요량(0).냉방전력 + Result1.일차E소요량(0).급탕전력 + Result1.일차E소요량(0).조명전력 + Result1.일차E소요량(0).환기전력)
Dim Sum_offsite As Decimal = (Result1.생산E(0).태양광전력생산량_offsite + Result1.생산E(0).풍력전력생산량_offsite) / (Result1.일차E소요량(0).난방전력 + Result1.일차E소요량(0).냉방전력 + Result1.일차E소요량(0).급탕전력 + Result1.일차E소요량(0).조명전력 + Result1.일차E소요량(0).환기전력)
Dim 난방 As Decimal = Sum * Result1.일차E소요량(0).난방전력 '//아마게산이안도잇으니 여기값들이 0이잇을거에요.
Dim 냉방 As Decimal = Sum * Result1.일차E소요량(0).냉방전력
Dim 조명 As Decimal = Sum * Result1.일차E소요량(0).조명전력
Dim 급탕 As Decimal = Sum * Result1.일차E소요량(0).급탕전력
Dim 환기 As Decimal = Sum * Result1.일차E소요량(0).환기전력
Dim 난방_offsite As Decimal = Sum_offsite * Result1.일차E소요량(0).난방전력 '//아마게산이안도잇으니 여기값들이 0이잇을거에요.
Dim 냉방_offsite As Decimal = Sum_offsite * Result1.일차E소요량(0).냉방전력
Dim 조명_offsite As Decimal = Sum_offsite * Result1.일차E소요량(0).조명전력
Dim 급탕_offsite As Decimal = Sum_offsite * Result1.일차E소요량(0).급탕전력
Dim 환기_offsite As Decimal = Sum_offsite * Result1.일차E소요량(0).환기전력
Dim 난방면적 As Decimal = 0
Dim 냉방면적 As Decimal = 0
Dim 조명면적 As Decimal = 0
Dim 급탕면적 As Decimal = 0
Dim 환기면적 As Decimal = 0
Dim 난방면적_offsite As Decimal = 0
Dim 냉방면적_offsite As Decimal = 0
Dim 조명면적_offsite As Decimal = 0
Dim 급탕면적_offsite As Decimal = 0
Dim 환기면적_offsite As Decimal = 0
If Result1.사용면적.H <> 0 Then
난방면적 = TOSG(IIf(난방 = 0, 0, 난방 / Result1.사용면적.H))
End If
If Result1.사용면적.C <> 0 Then
냉방면적 = TOSG(IIf(냉방 = 0, 0, 냉방 / Result1.사용면적.C))
End If
If Result1.사용면적.L <> 0 Then
조명면적 = TOSG(IIf(조명 = 0, 0, 조명 / Result1.사용면적.L))
End If
If Result1.사용면적.W <> 0 Then
급탕면적 = TOSG(IIf(급탕 = 0, 0, 급탕 / Result1.사용면적.W))
End If
If Result1.사용면적.V <> 0 Then
환기면적 = TOSG(IIf(환기 = 0, 0, 환기 / Result1.사용면적.V))
End If
If Result1.사용면적.H <> 0 Then
난방면적_offsite = TOSG(IIf(난방_offsite = 0, 0, 난방_offsite / Result1.사용면적.H))
End If
If Result1.사용면적.C <> 0 Then
냉방면적_offsite = TOSG(IIf(냉방_offsite = 0, 0, 냉방_offsite / Result1.사용면적.C))
End If
If Result1.사용면적.L <> 0 Then
조명면적_offsite = TOSG(IIf(조명_offsite = 0, 0, 조명_offsite / Result1.사용면적.L))
End If
If Result1.사용면적.W <> 0 Then
급탕면적_offsite = TOSG(IIf(급탕_offsite = 0, 0, 급탕_offsite / Result1.사용면적.W))
End If
If Result1.사용면적.V <> 0 Then
환기면적_offsite = TOSG(IIf(환기_offsite = 0, 0, 환기_offsite / Result1.사용면적.V))
End If
Dim 전기 As Decimal = 난방면적 + 냉방면적 + 조명면적 + 급탕면적 + 환기면적
Dim 전기_offsite As Decimal = 난방면적_offsite + 냉방면적_offsite + 조명면적_offsite + 급탕면적_offsite + 환기면적_offsite
'//열병합신재생에너지추가 130831 arin
신재생에너지 = Math.Round(-1 * (Result1.생산E(0).면적당생산량태양열 + Result1.생산E(0).신재생면적당열생산량 + Result1.생산E(0).면적당생산량지열 + Result1.생산E(0).면적당생산량수열 + 전기 * 2.75), 1)
Dim 신재생에너지_offsite As Decimal = Math.Round(-1 * (전기_offsite * 2.75), 1)
단위면적당신재생1차에너지합 = -1 * 신재생에너지
단위면적당신재생1차에너지합offsite = -1 * 신재생에너지_offsite
' 신재생에너지 = -1 * (합_열 + 합_전기 * 2.75) ' ' Result1.생산E(0).태양광전력생산량 * 2.75)
' Dim Sum As Decimal = (Result1.생산E(0).태양광전력생산량 * 2.75 + Result1.생산E(0).신재생열병합전력생산량 * 2.75) / (Result1.일차E소요량(0).난방전력 + Result1.일차E소요량(0).냉방전력 + Result1.일차E소요량(0).급탕전력 + Result1.일차E소요량(0).조명전력 + Result1.일차E소요량(0).환기전력)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "1차소요량"
Dr2.type = "신재생에너지"
Dr2.Req = 신재생에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
난방에너지 = Math.Round(Result1.일차E소요량(0).난방면적, 1)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "1차소요량"
Dr2.type = "난방에너지"
Dr2.Req = 난방에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
냉방에너지 = Math.Round(Result1.일차E소요량(0).냉방면적, 1)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "1차소요량"
Dr2.type = "냉방에너지"
Dr2.Req = 냉방에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
급탕에너지 = Math.Round(Result1.일차E소요량(0).급탕면적, 1)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "1차소요량"
Dr2.type = "급탕에너지"
Dr2.Req = 급탕에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
조명에너지 = Math.Round(Result1.일차E소요량(0).조명면적, 1)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "1차소요량"
Dr2.type = "조명에너지"
Dr2.Req = 조명에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
'계산결과!H92*3/계산결과!H27
환기에너지 = Math.Round(Result1.일차E소요량(0).환기면적, 1)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "1차소요량"
Dr2.type = "환기에너지"
Dr2.Req = 환기에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "1차소요량"
Dr2.type = "합계"
Dr2.Req = 난방에너지 + 냉방에너지 + 급탕에너지 + 조명에너지 + 환기에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
단위면적당1차에너소비량합 = 난방에너지 + 냉방에너지 + 급탕에너지 + 조명에너지 + 환기에너지 + Math.Round(단위면적당신재생1차에너지합, 1)
If 단위면적당1차에너소비량합 <> 0 Then
에너지자립률 = (Math.Round(단위면적당신재생1차에너지합, 1) / 단위면적당1차에너소비량합) * 100
Dim scale As Decimal = 0
If 에너지자립률 >= 20 Then
scale = 1.0
ElseIf 에너지자립률 >= 15 Then
scale = 0.9
ElseIf 에너지자립률 >= 10 Then
scale = 0.8
Else
scale = 0.7
End If
에너지자립률offsite = (Math.Round(단위면적당신재생1차에너지합offsite * scale, 1) / 단위면적당1차에너소비량합) * 100
에너지자립률 += 에너지자립률offsite
Else
에너지자립률 = 0
에너지자립률offsite = 0
End If
Case 1 '//에너지소요량
Dim Sum As Decimal = (Result1.생산E(0).태양광전력생산량 + Result1.생산E(0).풍력전력생산량 + Result1.생산E(0).신재생열병합전력생산량) / (Result1.일차E소요량(0).난방전력 + Result1.일차E소요량(0).냉방전력 + Result1.일차E소요량(0).급탕전력 + Result1.일차E소요량(0).조명전력 + Result1.일차E소요량(0).환기전력)
Dim 난방 As Decimal = Sum * Result1.일차E소요량(0).난방전력 '//아마게산이안도잇으니 여기값들이 0이잇을거에요.
Dim 냉방 As Decimal = Sum * Result1.일차E소요량(0).냉방전력
Dim 조명 As Decimal = Sum * Result1.일차E소요량(0).조명전력
Dim 급탕 As Decimal = Sum * Result1.일차E소요량(0).급탕전력
Dim 환기 As Decimal = Sum * Result1.일차E소요량(0).환기전력
Dim 난방면적 As Decimal = 0
Dim 냉방면적 As Decimal = 0
Dim 조명면적 As Decimal = 0
Dim 급탕면적 As Decimal = 0
Dim 환기면적 As Decimal = 0
If Result1.사용면적.H <> 0 Then
난방면적 = TOSG(IIf(난방 = 0, 0, 난방 / Result1.사용면적.H))
End If
If Result1.사용면적.C <> 0 Then
냉방면적 = TOSG(IIf(냉방 = 0, 0, 냉방 / Result1.사용면적.C))
End If
If Result1.사용면적.L <> 0 Then
조명면적 = TOSG(IIf(조명 = 0, 0, 조명 / Result1.사용면적.L))
End If
If Result1.사용면적.W <> 0 Then
급탕면적 = TOSG(IIf(급탕 = 0, 0, 급탕 / Result1.사용면적.W))
End If
If Result1.사용면적.V <> 0 Then
환기면적 = TOSG(IIf(환기 = 0, 0, 환기 / Result1.사용면적.V))
End If
Dim 면적 As Decimal = 난방면적 + 냉방면적 + 조명면적 + 급탕면적 + 환기면적
'=-SUM(계산결과!G108:G109)-계산결과!F42-계산결과!F48-계산결과!F51-계산결과!F56-계산결과!F59
'F42=IF($G$15=0,0,F38/$G$15)
'f38=(G104)/(SUM(H76:S76)+SUM(H85:S85)+SUM(H93:S93)+SUM(H97:S97)+SUM(H101:S101))*SUM(H76:S76)
'g15=난방면적
'f48=IF($G$20=0,0,F44/$G$20)
'f44=(G104)/(SUM(H76:S76)+SUM(H85:S85)+SUM(H93:S93)+SUM(H97:S97)+SUM(H101:S101))*SUM(H85:S85)
'g20=냉방면적
'//열병합신재생에너지추가 130831 arin
신재생에너지 = Math.Round(-1 * (Result1.생산E(0).면적당생산량태양열 + Result1.생산E(0).신재생면적당열생산량 + Result1.생산E(0).면적당생산량지열 + Result1.생산E(0).면적당생산량수열) - 면적, 1)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "소요량"
Dr2.type = "신재생에너지"
Dr2.Req = 신재생에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
난방에너지 = Math.Round(Result1.E소요량(0).난방면적, 1)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "소요량"
Dr2.type = "난방에너지"
Dr2.Req = 난방에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
냉방에너지 = Math.Round(Result1.E소요량(0).냉방면적, 1)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "소요량"
Dr2.type = "냉방에너지"
Dr2.Req = 냉방에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
급탕에너지 = Math.Round(Result1.E소요량(0).급탕면적, 1)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "소요량"
Dr2.type = "급탕에너지"
Dr2.Req = 급탕에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
조명에너지 = Math.Round(Result1.E소요량(0).조명면적, 1)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "소요량"
Dr2.type = "조명에너지"
Dr2.Req = 조명에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
환기에너지 = Math.Round(Result1.E소요량(0).환기면적, 1)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "소요량"
Dr2.type = "환기에너지"
Dr2.Req = 환기에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "소요량"
Dr2.type = "합계"
Dr2.Req = 난방에너지 + 냉방에너지 + 급탕에너지 + 조명에너지 + 환기에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
Case 2 '//에너지요구량
Case 3 '//co2발생량
신재생에너지 = 0
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "CO2발생량"
Dr2.type = "신재생에너지"
Dr2.Req = 신재생에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
난방에너지 = Math.Round(Result1.Co2발생량(0).난방면적, 1)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "CO2발생량"
Dr2.type = "난방에너지"
Dr2.Req = 난방에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
냉방에너지 = Math.Round(Result1.Co2발생량(0).냉방면적, 1)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "CO2발생량"
Dr2.type = "냉방에너지"
Dr2.Req = 냉방에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
급탕에너지 = Math.Round(Result1.Co2발생량(0).급탕면적, 1)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "CO2발생량"
Dr2.type = "급탕에너지"
Dr2.Req = 급탕에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
조명에너지 = Math.Round(Result1.Co2발생량(0).조명면적, 1)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "CO2발생량"
Dr2.type = "조명에너지"
Dr2.Req = 조명에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
'계산결과!H92*3/계산결과!H27
환기에너지 = Math.Round(Result1.Co2발생량(0).환기면적, 1)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "CO2발생량"
Dr2.type = "환기에너지"
Dr2.Req = 환기에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
Dr2 = Me.DSR.Graph_ReqUse.NewGraph_ReqUseRow
Dr2.Gubun = "CO2발생량"
Dr2.type = "합계"
Dr2.Req = 난방에너지 + 냉방에너지 + 급탕에너지 + 조명에너지 + 환기에너지
Me.DSR.Graph_ReqUse.Rows.Add(Dr2)
Case 4 '//1차에너지소요량(+계수) + 131020
End Select
Next
End Sub