Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Округление значений при экстракте чисел из БД
 
Есть два, условно одинаковых, кода. Первый возвращает числа в формате 0,00 (Общий), а второй (Мой) – 0,0000000000000 (13 нолей после ","). Эти числа именно в значение в ячейки, не формат отображения. Формат отображения настраивается без проблем в «Формате ячейки».  Различные значения «com1.Parameters.Item("@id").Value» не причина. Они есть в обоих кодах (в полных версиях) в разных местах, результат один. Если их поменять местами – результат не меняется. Друзья, научите где искать причину такого разного результата в значение чисел?
Общий:
Код
Private Sub CommandButton1_Click()
 
Dim n As Double
Dim i As Double
n = 2   '2
While Лист4.Range("a" + CStr(n)).Value <> ""
    n = n + 1
Wend
Dim dt As Date
dt = Лист4.Range("a" + CStr(n - 1)).Value
 
Лист4.Range("a" + CStr(n)).Select
 
Dim con1 As New ADODB.Connection
Dim com1 As New ADODB.Command
Dim rs1 As New ADODB.Recordset
con1.ConnectionString = "Provider=sqloledb;Data Source=web-nnv;Initial Catalog=www-fs;Integrated Security=SSPI;"
'Range("n74326") = con1 'Лощилов
con1.Open
'Range("n74326") = con1 'Лощилов
com1.CommandType = ADODB.CommandTypeEnum.adCmdStoredProc
com1.ActiveConnection = con1
com1.CommandText = "pProc2"
 
com1.Parameters.Refresh
com1.Parameters.Item("@ct").Value = "H"
com1.Parameters.Item("@id").Value = 3217
com1.Parameters.Item("@stt").Value = dt
com1.Parameters.Item("@stp").Value = Now
com1.Parameters.Item("@st").Value = 1800
com1.Parameters.Item("@rfr").Value = 1
com1.Prepared = True
 
i = n
rs1.CursorType = ADODB.CursorTypeEnum.adOpenKeyset
rs1.LockType = ADODB.LockTypeEnum.adLockOptimistic
 
Set rs1 = com1.Execute
    rs1.MoveFirst
    rs1.MoveNext
    While Not rs1.EOF
        Лист4.Range("a" + CStr(i)).Value = rs1.Fields("Time").Value + 3 / 24
        Лист4.Range("b" + CStr(i)).Value = rs1.Fields("Value").Value
        i = i + 1
        rs1.MoveNext
    Wend
rs1.Close
con1.Close
Set rs1 = Nothing
Set con1 = Nothing
Set com1 = Nothing
 
Лист4.Range("a" + CStr(i - 1)).Select
End Sub

Мой:
Код
Sub Факт()  'Выгрузка факта.
Dim n As Double
Dim I As Double
n = 57139
While Лист4.Range("a" + CStr(n)).Value <> ""
    n = n + 1
Wend
 
n = n - 1   'Обновление последней строки
 
Dim dt As Date
dt = Лист4.Range("a" + CStr(n - 1)).Value
Лист4.Range("a" + CStr(n)).Select
 
Dim con1 As New ADODB.Connection
Dim com1 As New ADODB.Command
Dim rs1 As New ADODB.Recordset
 
con1.ConnectionString = "Provider=sqloledb;Data Source=web-nnv;Initial Catalog=www-fs;Integrated Security=SSPI;"
con1.Open
com1.CommandType = ADODB.CommandTypeEnum.adCmdStoredProc
com1.ActiveConnection = con1
 
com1.CommandText = "pProc2"
com1.Parameters.Refresh
com1.Parameters.Item("@ct").Value = "H"     'ТИ, ПВ - H
com1.Parameters.Item("@id").Value = 3434   'ЧЭС/ МРЭС; ПВ/ТИ - 3434/24597
com1.Parameters.Item("@stt").Value = dt
com1.Parameters.Item("@stp").Value = Now
com1.Parameters.Item("@st").Value = 1800
com1.Parameters.Item("@rfr").Value = 1
com1.Prepared = True
 
I = n
rs1.CursorType = ADODB.CursorTypeEnum.adOpenKeyset
rs1.LockType = ADODB.LockTypeEnum.adLockOptimistic
 
Set rs1 = com1.Execute
    rs1.MoveFirst
    rs1.MoveNext
    While Not rs1.EOF
        Лист4.Range("a" + CStr(I)).Value = rs1.Fields("Time").Value + 3 / 24
        Лист4.Range("b" + CStr(I)).Value = rs1.Fields("Value").Value
'        Лист4.Range("b" + CStr(I)).Value = Format(rs1.Fields("Value").Value, "#0.00")
 
        I = I + 1
        rs1.MoveNext
    Wend
rs1.Close
con1.Close
Set rs1 = Nothing
Set con1 = Nothing
Set com1 = Nothing
 
Лист4.Range("a" + CStr(I - 1)).Select
End Sub
vba. Имя пользователя (логин) другого компьютера в одной сети.
 
Задача определить пользователя (активного), на компьтере в одном домене, в одной сети. Имя пользователя, полное или логин.
Страницы: 1
Наверх