Как мне добавить или вычесть значения, прочитанные из доступа внутри кода VBA? - PullRequest
0 голосов
/ 11 июня 2019

Я читаю значения из базы данных доступа и копирую их в определенные места на листе Excel.Некоторые значения из доступа должны быть добавлены с другим значением из доступа, прежде чем он будет скопирован в лист Excel.Как мне изменить мой код для добавления?

F.eks Как мне добавить значение в переменную "referansetrafikk" с другой переменной "nyskapt overfoert", прежде чем оно будет вставлено в определенное место в Excelлист?

Sub HentData()

DBFullName = "C:\saga_effekt_Nidaros_2017_tiltak.mdb"
Application.ScreenUpdating = False
Set TargetRange = Sheets("1.3 Persontransportmodell").Range("A1")

Set cn = CreateObject("ADODB.Connection")
cn.Open "DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=C:\saga_effekt_Tiltak.mdb;"

Set rs = CreateObject("ADODB.Recordset")

rs.Open "SELECT [VERDI] FROM [saga_trafikantnytte] WHERE [MODE] = 'tog' AND [VARIABEL] = 'referansetrafikk'", cn, , , adCmdText
TargetRange.Offset(12, 4).CopyFromRecordset rs:Application.ScreenUpdating = True: On Error Resume Next: rs.Close: On Error GoTo 0

rs.Open "SELECT [VERDI] FROM [saga_trafikantnytte] WHERE [MODE] = 'tog' AND [VARIABEL] = 'nyskapt_overfoert'", cn, , , adCmdText
**strong text**TargetRange.Offset(13, 4).CopyFromRecordset rs: Application.ScreenUpdating = True: On Error Resume Next: rs.Close: On Error GoTo 0

1 Ответ

0 голосов
/ 11 июня 2019

Просто используйте базовую арифметику в предложении SQL:

rs.Open "SELECT [VERDI], referansetrafikk + [nyskapt overfoert] As MyAddedVariable  FROM [saga_trafikantnytte] WHERE [MODE] = 'tog' AND [VARIABEL] = 'referansetrafikk'", cn, , , adCmdText

Конечно, вы также можете выполнить любой расчет после копирования набора записей.Выполнение вычислений с самим набором записей должно быть медленным и сложным.

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