powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel 2007 - Subtotal, результаты сильно сдвигаются вниз :(
1 сообщений из 1, страница 1 из 1
Excel 2007 - Subtotal, результаты сильно сдвигаются вниз :(
    #37712444
Terz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго вечера, коллеги.

С экселом знаком мало, написал вот выборку, да группировку. Проблема вот в чем: моя выборка возвращает произвольное число записей. Допустим, в первый раз - 20 тысяч. И соответсвенно, Grand Total- идет в 20 001 строке. Все хорошо.

А при втором вызове, уже с другими датами, - возвращается 50 записей. А Grand Total- остается в 20001 строке.

Ну и мелочь еще одна: когда делаю:
Selection.Subtotal GroupBy:=1, Function:=xlSum, TotalList:=Array(7, 8, 10, 11), Replace:=True, PageBreaks:=False, SummaryBelowData:=True - выдается мессажд, точно ли я хочу включить строчку над данными в группировку.
Как бы его убрать?




Private Sub GetDate()

DisplayAlerts = False

If Sheet1.Range("b2").Value = "" Then
MsgBox "Не введена дата начала выборки"
Range("B2").Select
GoTo cls
End If

If Sheet1.Range("d2").Value = "" Then
MsgBox "Не введена дата окончания выборки"
Range("d2").Select
GoTo cls
End If


' чистим все.
Range("B9").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
Selection.ClearContents
Range("B9").Select

Dim cnPubs As ADODB.Connection
Set cnPubs = New ADODB.Connection

' Строка подключения.
Dim strConn As String

'Использование поставщика OLE DB SQL Server.
strConn = "Provider=SQLOLEDB.1;Persist Security Info=True;User ID=User;Password=User;Data Source=192.168.11.3;"
'Открытие подключения.
cnPubs.Open strConn


' Создание объекта набора записей.
Dim rsPubs As ADODB.Recordset
Set rsPubs = New ADODB.Recordset
Dim SQLstr As String



SQLstr = "select * from мояТабличнаяФункция (" + "'" + Format(Sheet1.Range("b2"), "mm-dd-yyyy") + "'" + "," + "'" + Format(Sheet1.Range("D2"), "mm-dd-yyyy") + "'" + ", " + IIf(Sheet1.Range("G2") = "", "NULL", "'" + Sheet1.Range("G2") + "'") + ") order by 1, 2"

With rsPubs
' Присваивание объекта Connection.
.ActiveConnection = cnPubs
' Извлечение необходимых записей.
.Open SQLstr


If .EOF And .BOF Then
MsgBox "Не найдены данные по указанным параметрам. Проверьте даты - и название поставщика"
Range("B2").Select
GoTo CloseRst
End If


Sheet1.Range("B9").CopyFromRecordset rsPubs
MsgBox "Получены данные по указанным датам"

' теперь все выделил
Range("B9").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
' и сделал подитог
Selection.Subtotal GroupBy:=1, Function:=xlSum, TotalList:=Array(7, 8, 10, 11), Replace:=True, PageBreaks:=False, SummaryBelowData:=True

' и в завершении всего
Range("B2").Select
.Close


End With


CloseRst:
cnPubs.Close
Set rsPubs = Nothing
Set cnPubs = Nothing
DisplayAlerts = False


cls:


End Sub ' -- Sheet1.Range.
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel 2007 - Subtotal, результаты сильно сдвигаются вниз :(
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]