Система управления программным комплексом для автоматизации расчётов трубопроводных систем

Автоматизация расчёта параметров сетей трубопроводов по годам на основе прогнозных показателей добычи и закачки с применением программного продукта Pipesim и технологии OpenLink, Microsoft Excel. Определение плановой себестоимости и эффективности.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 25.05.2012
Размер файла 4,1 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Dim gt As Integer

Dim OK As Boolean, OKey

Dim objn As String

objn = Sheets (2). Cells (n, m)

`специальный объект

INetModel. OpenModel filename

Set Over = INetModel. LocalFluid (objn)

OKey = Over. OverrideValues

`установка значений параметров

BlackOil. name = "Local"

BlackOil. Watercut = Sheets (2). Cells (n + 1, m + period)

If OKey = True Then

Over. WCutoverride_SI = Sheets (2). Cells (n + 1, m + period)

End If

BlackOil. API = (141.5 * 1000/Sheets (2). Cells (n + 2, m + period)) - 131.5

BlackOil. WaterSG = Sheets (2). Cells (n + 3, m + period)

BlackOil. GasSG = Sheets (2). Cells (n + 4, m + period)

gt = BlackOil. GOR_Type

If gt = 0 Then

BlackOil. GLR_SI = Sheets (2). Cells (n + 5, m + period)

If OKey = True Then

Over. GLRoverride_SI = Sheets (2). Cells (n + 5, m + period)

End If

End If

If gt = 1 Then

BlackOil. GOR_SI = Sheets (2). Cells (n + 5, m + period)

If OKey = True Then

Over. GORoverride_SI = Sheets (2). Cells (n + 5, m + period)

End If

End If

If gt = 2 Then

BlackOil. LGR_SI = Sheets (2). Cells (n + 5, m + period)

If OKey = True Then

Over. LGRoverride_SI = Sheets (2). Cells (n + 5, m + period)

End If

End If

If gt = 3 Then

BlackOil. OGR_SI = Sheets (2). Cells (n + 5, m + period)

If OKey = True Then

Over. OGRoverride_SI = Sheets (2). Cells (n + 5, m + period)

End If

End If

OK = INetModel. SetBoundaryBlackOil (objn, BlackOil)

INetModel. LocalFluid (s) = Over

Dim val As Double

val = Sheets (2). Cells (n + 9, m + period)

INetModel. SetBoundaryTemperature objn, val, "C"

Dim vl As Double

Dim rate As String

vl = Sheets (2). Cells (n + 10, m + period)

rate = Sheets (2). Cells (n + 10, 1)

Select Case rate

Case "Liquid rate (sm3/d)"

INetModel. SetBoundaryFluidrate objn, 0, vl, "sm3/d"

Case "Gas rate (sm3/d)"

INetModel. SetBoundaryFluidrate objn, 1, vl, "sm3/d"

Case "Mass rate (kg/h)"

INetModel. SetBoundaryFluidrate objn, 2, vl, "kg/h"

End Select

OK = INetModel. SaveModel (filename)

End Sub

Процедуры установки значений для моделей смеси

Sub SetSCO (filename, n, m, period)

`доступ к библиотекам

Dim INetModel As New NET32COMLib. INetModel

Dim Composition As New FLUIDMODELCOMLib. ICompositional

`рабочие переменные

Dim coun As Long

Dim chyd As Long

Dim caqu As Long

Dim k As Integer, l, ak, al

Dim temp As Integer

Dim hyd () As String

Dim aqu () As String

Dim mhyd () As Double

Dim maqu () As Double

Dim mol () As Double

Dim OK As Boolean

Dim object As String, ob

`доступ к файлу модели

INetModel. OpenModel filename

`создание специального объекта

Composition. CreateNewComposition

k = 0

l = 0

nn = n

mm = m

`определение числа элементов в списке

object = Sheets (2). Cells (n, m)

If Sheets (2). Cells (n + 1, m) = "Hydrocarbons" Then

n = n + 1

Do While Sheets (2). Cells (n + 1 + k, 1) <> "Aqueous"

chyd = k + 1

k = k + 1

Loop

End If

If chyd <> 0 Then

ReDim hyd (0 To chyd)

`определение размерности для массива элементов

ReDim mhyd (0 To chyd)

`определение элементов списка иих молярной долив массивы

If Sheets (2). Cells (nn + 1, mm) = "Hydrocarbons" Then

Do While Sheets (2). Cells (nn + 2 + l, mm) <> "Aqueous"

hyd (l) = Sheets (2). Cells (nn + 2 + l, mm)

mhyd (l) = Sheets (2). Cells (nn + 2 + l, mm + period)

l = l + 1

Loop

End If

End If

ak = 1

`определение наличия воды

If Sheets (2). Cells (n + 1 + chyd, m) = "Aqueous" Then

n = n + 1

Do While Sheets (2). Cells (n + chyd + ak, m) <> ""

ak = ak + 1

caqu = ak

Loop

End If

If caqu <> 0 Then

ReDim aqu (0 To caqu)

ReDim maqu (0 To caqu)

`запись данных о воде

al = 0

n = n - 1

If Sheets (2). Cells (n + 2 + chyd, m) = "Aqueous" Then

n = n + 1

Do While Sheets (2). Cells (n + 2 + chyd, m) <> ""

aqu (al) = Sheets (2). Cells (n + 2 + chyd, m)

maqu (al) = Sheets (2). Cells (n + 2 + chyd + al, m + period)

al = al + a1

Loop

End If

End If

`создание единого массива элементов и молярных долей

coun = chyd + caqu

ReDim mol (0 To coun)

If chyd <> 0 Then

For temp = 0 To chyd

mol (temp) = mhyd (temp)

Next

End If

If caqu <> 0 Then

For temp = chyd To coun

mol (temp) = maqu (temp - caqu + 1)

Next

End If

Dim bl () As Boolean

ReDim bl (o To coun)

Dim u As Integer

For u = 0 To coun - 1

bl (u) = True

Next

`установка значений для сети

Composition. SetComponentList hyd, chyd, aqu, caqu

Composition. SetMolarList mol, coun

Composition. SetLibraryList bl, coun

Composition. UpdateComposition

OK = INetModel. SetBoundaryComposition (object, Composition)

Dim val As Double

val = Sheets (2). Cells (nn + coun + 5, mm + period)

INetModel. SetBoundaryTemperature object, val, "C"

Dim vl As Double

Dim rate As String

vl = Sheets (2). Cells (nn + coun + 6, mm + period)

rate = Sheets (2). Cells (nn + coun + 6, 1)

Select Case rate

Case "Liquid rate (sm3/d)"

INetModel. SetBoundaryFluidrate object, 0, vl, "sm3/d"

Case "Gas rate (sm3/d)"

INetModel. SetBoundaryFluidrate object, 1, vl, "sm3/d"

Case "Mass rate (kg/h)"

INetModel. SetBoundaryFluidrate object, 2, vl, "kg/h"

End Select

OK = INetModel. SaveModel (filename)

End Sub

Процедура SetSink (filename, period)

Sub SetSink (filename, period)

`доступ к библиотеке

Dim INetModel As New NET32COMLib. INetModel

INetModel. OpenModel filename

Dim objname As Variant

Dim count As Long

`список всех стоков сети

INetModel. GetNameList 3, objname, count

Dim n As Integer

n = 1

Dim m As Integer

For m = 1 To count - 1

Do While Sheets (3). Cells (n, 1) <> objname (m)

n = n + 1

Loop

If Sheets (3). Cells (n, 1) = objname (m) Then

`Pressure

Dim pr As Double

pr = Sheets (3). Cells (n + 1, 1 + period)

INetModel. SetBoundaryPressure objname (m), pr, "bara"

`Temperature

Dim val As Double

val = Sheets (3). Cells (n + 2, 1 + period)

INetModel. SetBoundaryTemperature objname (m), val, "C"

`rate

Dim vl As Double

Dim rate As String

vl = Sheets (3). Cells (n + 3, 1 + period)

rate = Sheets (3). Cells (n + 3, 1)

Select Case rate

Case "Liquid rate (sm3/d)"

INetModel. SetBoundaryFluidrate objname (m), 0, vl, "sm3/d"

Case "Gas rate (sm3/d)"

INetModel. SetBoundaryFluidrate objname (m), 1, vl, "sm3/d"

Case "Mass rate (kg/h)"

INetModel. SetBoundaryFluidrate objname (m), 2, vl, "kg/h"

End Select

n = 1

End If

Next

OK = INetModel. SaveModel (filename)

End Sub

Sub SetCO (filename, n, m, period)

`доступ к бибилиотекам

Dim INetModel As New NET32COMLib. INetModel

Dim Composition As New FLUIDMODELCOMLib. ICompositional

`рабочие переменные

Dim coun As Long

Dim chyd As Long

Dim caqu As Long

Dim k As Integer, l, ak, al

Dim temp As Integer

Dim hyd () As String

Dim aqu () As String

Dim mhyd () As Double

Dim maqu () As Double

Dim mol () As Double

Dim OK As Boolean

Dim object As String, ob

`доступ к файлу сети

INetModel. OpenModel filename

`создание специального объекта

Composition. CreateNewComposition

k = 0

l = 0

nn = n

mm = m

`количество элементов с списке

If Sheets (1). Cells (n + 1, m) = "Hydrocarbons" Then

n = n + 1

Do While Sheets (1). Cells (n + 1 + k, 1) <> "Aqueous"

chyd = k + 1

k = k + 1

Loop

End If

If chyd <> 0 Then

ReDim hyd (0 To chyd)

ReDim mhyd (0 To chyd)

`заполнение массива элементами состава и их молярными долями

If Sheets (1). Cells (nn + 1, mm) = "Hydrocarbons" Then

Do While Sheets (1). Cells (nn + 2 + l, mm) <> "Aqueous"

hyd (l) = Sheets (1). Cells (nn + 2 + l, mm)

mhyd (l) = Sheets (1). Cells (nn + 2 + l, mm + period)

l = l + 1

Loop

End If

End If

ak = 1

`определение наличия данных о воде

If Sheets (1). Cells (n + 1 + chyd, m) = "Aqueous" Then

n = n + 1

Do While Sheets (1). Cells (n + chyd + ak, m) <> ""

ak = ak + 1

caqu = ak

Loop

End If

If caqu <> 0 Then

ReDim aqu (0 To caqu)

ReDim maqu (0 To caqu)

`заполнение массива данными о воде

al = 0

n = n - 1

If Sheets (1). Cells (n + 2 + chyd, m) = "Aqueous" Then

n = n + 1

Do While Sheets (1). Cells (n + 2 + chyd, m) <> ""

aqu (al) = Sheets (1). Cells (n + 2 + chyd, m)

maqu (al) = Sheets (1). Cells (n + 2 + chyd + al, m + period)

al = al + a1

Loop

End If

End If

coun = chyd + caqu

ReDim mol (0 To coun)

`создание единого массива элементов и их молярных долей

If chyd <> 0 Then

For temp = 0 To chyd

mol (temp) = mhyd (temp)

Next

End If

If caqu <> 0 Then

For temp = chyd To coun

mol (temp) = maqu (temp - caqu + 1)

Next

End If

Dim bl () As Boolean

ReDim bl (o To coun)

Dim u As Integer

For u = 0 To coun - 1

bl (u) = True

Next

`установка новых значений

Composition. SetComponentList hyd, chyd, aqu, caqu

Composition. SetMolarList mol, coun

Composition. SetLibraryList bl, coun

Composition. UpdateComposition

INetModel.compositionDefault = Composition

OK = INetModel. SaveModel (filename)

End Sub

Процедура Sink_page ()

Sub Sink_page ()

`доступ к библиотеке

Dim INetModel As New NET32COMLib. INetModel

Dim filename As String

`доступ к файлу модели

filename = Sheets (1). Range ("A1")

INetModel. OpenModel filename

`рабочие переменные

Dim count As Long

Dim objname As Variant

Dim indx As Integer

Dim pres As Double

Dim temp As Double

Dim d As Double

Dim l As Long

Dim m As Integer

m = 1

`список участков сети

INetModel. GetNameList 3, objname, count

For indx = 0 To count - 1

`форматирование ячеек

Sheets (3). Cells (m,

2). Interior. Color = RGB (131, 111, 255)

Sheets (3). Cells (m, 1). Interior. Color = RGB (131, 111, 255)

Sheets (3). Cells (m, 1). Font. Bold = True

Sheets (3). Cells (m, 1) = objname (indx)

m = m + 1

INetModel. GetBoundaryProperties objname (indx), pres, temp, d, l

`Pressure

Sheets (3). Cells (m, 1) = "Pressure (" & Sheets ("Units"). Range ("D5") & ")"

If pres <> - 7777 Then

Sheets (3). Cells (m,

2) = pres * Sheets ("Units"). Range ("C5")

Range (Sheets (3). Cells (m,

2), Sheets (3). Cells (m, 34)). Interior. Color = RGB (224, 255, 255)

Else

Sheets (3). Cells (m,

2) = ""

End If

m = m + 1

`Temperature

Sheets (3). Cells (m, 1) = "Temperature (" & Sheets ("Units"). Range ("D2") & ")"

Range (Sheets (3). Cells (m,

2), Sheets (3). Cells (m, 34)). Interior. Color = RGB (224, 255, 255)

If temp <> - 7777 Then

Sheets (3). Cells (m,

2) = (temp - 32) * 5/9

Else

Sheets (3). Cells (m,

2) = ""

End If

m = m + 1

If d <> - 7777 Then

Select Case l

`Rate

Case 0

Sheets (3). Cells (m, 1) = "Liquid rate (" & Sheets ("Units"). Range ("D11") & ")"

Sheets (3). Cells (m,

2) = d * Sheets ("Units"). Range ("C11")

Range (Sheets (3). Cells (m,

2), Sheets (3). Cells (m, 34)). Interior. Color = RGB (224, 255, 255)

If l < 0 Then

Sheets (3). Cells (m,

2) = ""

End If

Case 1

Sheets (3). Cells (m, 1) = "Gas rate (" & Sheets ("Units"). Range ("D8") & ")"

Sheets (3). Cells (m,

2) = d * Sheets ("Units"). Range ("C8")

Range (Sheets (3). Cells (m,

2), Sheets (3). Cells (m, 34)). Interior. Color = RGB (224, 255, 255)

If l = 0 Then

Sheets (3). Cells (m,

2) = ""

End If

Case 2

Sheets (3). Cells (m, 1) = "Mass rate (" & Sheets ("Units"). Range ("D14") & ")"

Sheets (3). Cells (m,

2) = d * Sheets ("Units"). Range ("C14")

Range (Sheets (3). Cells (m,

2), Sheets (3). Cells (m, 34)). Interior. Color = RGB (224, 255, 255)

If l = 0 Then

Sheets (3). Cells (m,

2) = ""

End If

End Select

End If

m = m + 3

Next

End Sub

Процедура SourceComp ()

Sub SourceComp ()

`доступ к бибилиотеке

Dim INetModel As New NET32COMLib. INetModel

`рабочие переменные

Dim filename As String

Dim tip As Integer

Dim pres As Double, pess

Dim temp As Double, tempe

Dim d As Double

Dim l As Long

`доступ к файлу модели

filename = Range ("A1")

INetModel. OpenModel filename

`рабочие переменные

Dim count As Long, lastcount, inx

Dim objname As Variant, lis

Dim s As String

Dim coun As Long

Dim chyd As Long

Dim caqu As Long

Dim all As Variant, hyd, aqu, mol

Dim k As Integer, ll, m, p

Dim w As Integer

w = 1

`доступ к библиотеке, специальный объект

Dim comp As New FLUIDMODELCOMLib. ICompositional

Set comp = INetModel.compositionDefault

`список источников сети

INetModel. GetNameList 2, objname, count

For indx = 0 To count - 1

s = objname (indx)

`считывание переметров истчоников

INetModel. GetBoundaryComposition s, comp

coun = comp. GetComponentList (all, hyd, aqu, chyd, caqu)

comp. GetMolarList mol

`форматирование рабочих ячеек

Sheets (2). Cells (w, 1). Interior. Color = RGB (131, 111, 255)

Sheets (2). Cells (w,

2). Interior. Color = RGB (131, 111, 255)

Sheets (2). Cells (w, 1) = s

Sheets (2). Cells (w, 1). Font. Bold = True

w = w + 1

Sheets (2). Cells (w, 1) = "Hydrocarbons"

Sheets (2). Cells (w, 1). Font. Bold = True

Sheets (2). Cells (w, 1). Font. Italic = True

w = w + 1

`заполнение ячеек данными о компонентном составе

For k = 0 To chyd - 1

Sheets (2). Cells (w + k, 1) = hyd (k)

Sheets (2). Cells (w + k,

2) = mol (k)

Range (Sheets (2). Cells (w + k,

2), Sheets (2). Cells (w + k, 34)). Interior. Color = RGB (224, 255, 255)

Next

w = w + k

Sheets (2). Cells (w, 1). Font. Bold = True

Sheets (2). Cells (w, 1). Font. Italic = True

Sheets (2). Cells (w, 1) = "Aqueous"

w = w + 1

For ll = 0 To caqu - 1

Sheets (2). Cells (w + ll, 1) = aqu (ll)

Sheets (2). Cells (w + ll,

2) = mol (chyd + ll)

Range (Sheets (2). Cells (w + ll,

2), Sheets (2). Cells (w + ll, 34)). Interior. Color = RGB (224, 255, 255)

w = w + 1

Next

`Считывание глобальны параметров

INetModel. GetBoundaryProperties s, pres, temp, d, l

Sheets (2). Cells (w + 1, 1) = "Pressure (" & Sheets ("Units"). Range ("D5") & ")"

If pres <> - 7777 Then

Sheets (2). Cells (w + 1,2) = pres * Sheets ("Units"). Range ("C5")

End If

Sheets (2). Cells (w + 2, 1) = "Temperature (" & Sheets ("Units"). Range ("D2") & ")"

If temp <> - 7777 Then

Sheets (2). Cells (w + 2,2) = (temp - 32) * 5/9

Range (Sheets (2). Cells (w + 2,2), Sheets (2). Cells (w + 2, 34)). Interior. Color = RGB (224, 255, 255)

End If

If d <> - 7777 Then

If l = 0 Then

Sheets (2). Cells (w + 3, 1). Font. Italic = True

Sheets (2). Cells (w + 3, 1) = "Liquid rate (" & Sheets ("Units"). Range ("D11") & ")"

Sheets (2). Cells (w + 3,2) = d * Sheets ("Units"). Range ("C11")

Range (Sheets (2). Cells (w + 3,2), Sheets (2). Cells (w + 3, 34)). Interior. Color = RGB (224, 255, 255)

End If

If l = 1 Then

Sheets (2). Cells (w + 3, 1). Font. Italic = True

Sheets (2). Cells (w + 3, 1) = "Gas rate (" & Sheets ("Units"). Range ("D8") & ")"

Sheets (2). Cells (w + 3,2) = d * Sheets ("Units"). Range ("C8")

Range (Sheets (2). Cells (w + 3,2), Sheets (2). Cells (w + 3, 34)). Interior. Color = RGB (224, 255, 255)

End If

If l = 2 Then

Sheets (2). Cells (w + 3, 1). Font. Italic = True

Sheets (2). Cells (w + 3, 1) = "Mass rate (" & Sheets ("Units"). Range ("D14") & ")"

Sheets (2). Cells (w + 3,2) = d * Sheets ("Units"). Range ("C14")

Range (Sheets (2). Cells (w + 3,2), Sheets (2). Cells (w + 3, 34)). Interior. Color = RGB (224, 255, 255)

End If

End If

w = w + 6

Next

End Sub

Процедура SourceBO ()

Sub SourceBO ()

`доступ к библиотеке

Dim INetModel As New NET32COMLib. INetModel

Dim Over As New NET32COMLib. FluidModel

`рабочие переменные

Dim filename As String

Dim tip As Integer

`доступ к файлу модели

filename = Sheets (1). Range ("A1")

INetModel. OpenModel filename

Sheets (2). name = "Sources"

Sheets (2). Cells. Clear

`рабочие переменные

Dim count As Long, lastcount, inx

Dim objname As Variant, lis

Dim s As String

Dim coun As Long

Dim chyd As Long

Dim caqu As Long

Dim all As Variant, hyd, aqu, mol

Dim k As Integer, ll, m, p

Dim w As Integer

Dim pr As Double

Dim tmp As Double

Dim OK As Boolean, OKey

w = 1

`доступ к библиотеке, специальный объект

Dim boil As New FLUIDMODELCOMLib. IBlackOil

Set boil = INetModel. BlackOilDefault

`список источников сети

INetModel. GetNameList 2, objname, count

For indx = 0 To count - 1

s = objname (indx)

`считывание параметров источников

Set Over = INetModel. LocalFluid (s)

INetModel. GetBoundaryBlackOil s, boil

OKey = Over. OverrideValues

Range (Sheets (2). Cells (w, 1), Sheets (2). Cells (w, 34)). Interior. Color = RGB (131, 111, 255)

'Sheets (2). Cells (w,

2). Interior. Color = RGB (131, 111, 255)

Sheets (2). Cells (w, 1). Font. Bold = True

Sheets (2). Cells (w, 1) = s

w = w + 1

Sheets (2). Cells (w, 1) = "Watercut (%)"

If OKey = True Then

Sheets (2). Cells (w,

2) = Over. WCutoverride_SI

Else

Sheets (2). Cells (w,

2) = boil. Watercut

End If

Range (Sheets (2). Cells (w,

2), Sheets (2). Cells (w, 34)). Interior. Color = RGB (224, 255, 255)

w = w + 1

Sheets (2). Cells (w, 1) = "DOD (" & Sheets ("Units"). Cells (56,4) & ")"

Sheets (2). Cells (w,

2) = (141.5/ (boil. API + 131.5)) * 1000

Range (Sheets (2). Cells (w,

2), Sheets (2). Cells (w, 34)). Interior. Color = RGB (224, 255, 255)

w = w + 1

Sheets (2). Cells (w, 1) = "WaterSG"

Sheets (2). Cells (w,

2) = boil. WaterSG

Range (Sheets (2). Cells (w,

2), Sheets (2). Cells (w, 34)). Interior. Color = RGB (224, 255, 255)

w = w + 1

Sheets (2). Cells (w, 1) = "GasSG"

Sheets (2). Cells (w,

2) = boil. GasSG

Range (Sheets (2). Cells (w,

2), Sheets (2). Cells (w, 34)). Interior. Color = RGB (224, 255, 255)

w = w + 1

If OKey = True Then

gt = Over. GORoverride_Type

Else

gt = boil. GOR_Type

End If

If gt = 0 Then

Sheets (2). Cells (w, 1) = "GLR (" & Sheets ("Units"). Range ("D20") & ")"

If OKey = True & Over. GLRoverride_SI <> - 7777 Then

Sheets (2). Cells (w,

2) = Over. GLRoverride_SI * Sheets ("Units"). Range ("C20")

Else

Sheets (2). Cells (w,

2) = boil. GLR_SI * Sheets ("Units"). Range ("C20")

End If

Range (Sheets (2). Cells (w,

2), Sheets (2). Cells (w, 34)). Interior. Color = RGB (224, 255, 255)

End If

If gt = 1 Then

Sheets (2). Cells (w, 1) = "GOR (" & Sheets ("Units"). Range ("D23") & ")"

If OKey = True And Over. GORoverride_SI <> - 7777 Then

Sheets (2). Cells (w,

2) = Over. GORoverride_SI * Sheets ("Units"). Range ("C23")

Else

Sheets (2). Cells (w,

2) = boil. GOR_SI * Sheets ("Units"). Range ("C23")

End If

Range (Sheets (2). Cells (w,

2), Sheets (2). Cells (w, 34)). Interior. Color = RGB (224, 255, 255)

End If

If gt = 2 Then

Sheets (2). Cells (w, 1) = "LGR (" & Sheets ("Units"). Range ("D26") & ")"

If OKey = True Then

Sheets (2). Cells (w,

2) = Over. LGRoverride_SI * Sheets ("Units"). Range ("C26")

Else

Sheets (2). Cells (w,

2) = boil. LGR_SI * Sheets ("Units"). Range ("C26")

End If

Range (Sheets (2). Cells (w,

2), Sheets (2). Cells (w, 34)). Interior. Color = RGB (224, 255, 255)

End If

If gt = 3 Then

Sheets (2). Cells (w, 1) = "OGR (" & Sheets ("Units"). Range ("D17") & ")"

If OKey = True Then

Sheets (2). Cells (w,

2) = Over. OGRoverride_SI * Sheets ("Units"). Range ("C17")

Else

Sheets (2). Cells (w,

2) = boil. OGR_SI * Sheets ("Units"). Range ("C17")

End If

Range (Sheets (2). Cells (w,

2), Sheets (2). Cells (w, 34)). Interior. Color = RGB (224, 255, 255)

End If

w = w + 1

Sheets (2). Cells (w, 1) = "Solution Gas Correlation"

typ = boil. SolutionGasCorrelation

If typ = 0 Then

Sheets (2). Cells (w,

2) = "Lasater"

End If

If typ = 1 Then

Sheets (2). Cells (w,

2) = "Standing"

End If

If typ = 2 Then

Sheets (2). Cells (w,

2) = "Vazquez and Beggs"

End If

If typ = 3 Then

Sheets (2). Cells (w,

2) = "Glaso"

End If

If typ = 4 Then

Sheets (2). Cells (w,

2) = "Kartoatmodjo"

End If

Dim pres As Double

Dim temp As Double

Dim d As Double

Dim l As Long

w = w + 1

INetModel. GetBoundaryProperties s, pres, temp, d, l

Sheets (2). Cells (w + 1, 1) = "Pressure (" & Sheets ("Units"). Range ("D5") & ")"

If pres <> - 7777 Then

Sheets (2). Cells (w + 1,2) = pres * Sheets ("Units"). Range ("C5")

End If

Sheets (2). Cells (w + 2, 1) = "Temperature (" & Sheets ("Units"). Range ("D2") & ")"

Range (Sheets (2). Cells (w + 2,2), Sheets (2). Cells (w + 2, 34)). Interior. Color = RGB (224, 255, 255)

If temp <> - 7777 Then

Sheets (2). Cells (w + 2,2) = (temp - 32) * 5/9

End If

If d <> - 7777 Then

If l = 0 Then

Sheets (2). Cells (w + 3, 1). Font. Italic = True

Range (Sheets (2). Cells (w + 3,2), Sheets (2). Cells (w + 3, 34)). Interior. Color = RGB (224, 255, 255)

Sheets (2). Cells (w + 3, 1) = "Liquid rate (" & Sheets ("Units"). Range ("D11") & ")"

Sheets (2). Cells (w + 3,2) = d * Sheets ("Units"). Range ("C11")

End If

If l = 1 Then

Sheets (2). Cells (w + 3, 1). Font. Italic = True

Range (Sheets (2). Cells (w + 3,2), Sheets (2). Cells (w + 3, 34)). Interior. Color = RGB (224, 255, 255)

Sheets (2). Cells (w + 3, 1) = "Gas rate (" & Sheets ("Units"). Range ("D8") & ")"

Sheets (2). Cells (w + 3,2) = d * Sheets ("Units"). Range ("C8")

End If

If l = 2 Then

Sheets (2). Cells (w + 3, 1). Font. Italic = True

Range (Sheets (2). Cells (w + 3,2), Sheets (2). Cells (w + 3, 34)). Interior. Color = RGB (224, 255, 255)

Sheets (2). Cells (w + 3, 1) = "Mass rate (" & Sheets ("Units"). Range ("D14") & ")"

Sheets (2). Cells (w + 3,2) = d * Sheets ("Units"). Range ("C14")

End If

End If

w = w + 6

Next

End Sub

Размещено на Allbest.ru


Подобные документы

  • Описание разработанной подсистемы автоматизации, алгоритм ее работы. Структуры базы данных и составных частей подсистемы. Затраты на разработку программного продукта и эффект от внедрения подсистемы. Руководство по работе с программным комплексом.

    дипломная работа [3,0 M], добавлен 02.02.2009

  • Разработка модуля автоматизации продажи автозапчастей. Проектирование информационной системы на основе базы данных в среде Microsoft SQL Server 2008. Структуры диалога и программного обеспечения. Описание запросов и отчетов к БД. Создание средств защиты.

    курсовая работа [1,1 M], добавлен 10.12.2014

  • Основные возможности программного пакета Microsoft Excel, его популярность среди бухгалтеров и экономистов. Использование математических, статистических и логических функций. Определение частоты наступления событий. Особенности ранжирования данных.

    презентация [1,1 M], добавлен 22.10.2015

  • Исследование возможности автоматизации забора и анализа статистических данных из различных систем. Разработка удобного и масштабируемого программного продукта для автоматизации построения маркетинговых отчетов. Защита внутрикорпоративной информации.

    дипломная работа [3,0 M], добавлен 28.01.2014

  • Проблемы автоматизации менеджмента в турфирмах для повышения эффективности систем управления и безопасности, расширения числа клиентов, решения маркетинговых задач. Внедрение компьютерных систем бронирования на примере Fidelio Hotel Management System.

    курсовая работа [268,3 K], добавлен 07.01.2015

  • Характеристика программного продукта Microsoft Outlook 2000. Принципы работы с редактором электронных таблиц Microsoft Excel и текстового редактора Microsoft Word. Методические указания при работе с СУБД Access. Анализ системы управления базами данных.

    контрольная работа [116,3 K], добавлен 13.11.2010

  • Технология формирования исходной матрицы числовой экономико-математической модели на основе заданной информации. Алгоритм решения задачи программным комплексом на примере использования Excel. Процедура возврата результатов решения в электронную таблицу.

    методичка [38,4 K], добавлен 05.07.2010

  • Порядок контроля и приемки программного продукта, предназначенного для автоматизации процесса анализа эффективности инвестиций и капитальных вложений. Состав входной и выходной информации. Описание функций программного комплекса. Руководство пользователя.

    курсовая работа [436,8 K], добавлен 28.05.2013

  • Определение параметров линейной зависимости из графика. Метод парных точек. Метод наименьших квадратов. Блок-схема программного комплекса в Microsoft Visual Studio и Microsoft Excel. Инструкция пользователя, скриншоты. Общий вид программного кода.

    курсовая работа [2,1 M], добавлен 29.11.2014

  • Понятие и специфика автоматизированных систем. Описание методики разработки программы для автоматизации. Ее тестирование и отладка. Внедрение АС в работу предприятия. Расчет экономического эффекта от разработки и реализации программного продукта.

    дипломная работа [1,4 M], добавлен 23.06.2015

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.