Я работаю в VBA, чтобы автоматизировать отчет. У меня есть числа, проходящие, когда я запускаю макрос, но числа вставляются вертикально вниз по листу, а не по горизонтали, как мне нужно. Вот код, который у меня есть до сих пор (включая код для переноса его, который не работает). Что я могу сделать, чтобы зафиксировать его для транспонирования?Транспонирование SQL-результата в Excel
FromDatex = Range("W39").Value
ToDatex = Range("X39").Value
Range("S7:AD9").ClearContents
SQLStr = "SELECT SUM(VAL) FROM OPSAHISTM " & _
"WHERE trunc(DATED) >=to_date('" & FromDatex & "','mm/dd/yyyy') " & _
"AND trunc(DATED) <=to_date('" & ToDatex & "','mm/dd/yyyy') " & _
"AND CUSTOMER = '03BA17'" & _
"GROUP BY TRUNC(DATED,'MM') ORDER BY TRUNC(DATED,'MM')"
rs.Open SQLStr, Cn, adOpenStatic
With Range("S9:AD9")
.ClearContents
.CopyFromRecordset rs
Application.WorksheetFunction.Transpose ("S9:S11")
End With
rs.Close
Cn.Close
Set rs = Nothing
Set Cn = Nothing
Что такое определение 'rs'? –
Это то, что я положил; это то, что вы имеете в виду: Set rs = New ADODB.Recordset – lucky123
Пожалуйста, улучшите вопрос. Не забудьте также добавить определение 'Cn'. –