Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сумма значений по одному полю в выделенных записях табличной формы / 7 сообщений из 7, страница 1 из 1
13.11.2002, 13:13
    #32067409
Kriven
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сумма значений по одному полю в выделенных записях табличной формы
К примеру есть подчиненная табличная форма с двумя столбцами "Имя" и "Количество".
мышкой выделяем несколько записей и необходимо подсчитать сумму в поле количество но только выделенных записей. Как?
Заранее благодарен kriven
...
Рейтинг: 0 / 0
15.11.2002, 07:15
    #32068170
Kriven
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сумма значений по одному полю в выделенных записях табличной формы
И все таки может кто знает?
...
Рейтинг: 0 / 0
15.11.2002, 12:40
    #32068307
наутилус
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сумма значений по одному полю в выделенных записях табличной формы
гм... я бы наверное сделал в не подчинённую табличную форму, а список. Там пусть выделяют чего хотят (незабыть только разрешить мултиселест) 8)).. а дальше пробегать по выделеным записям списка и считать сумму 8).
...
Рейтинг: 0 / 0
15.11.2002, 13:38
    #32068342
alk
alk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сумма значений по одному полю в выделенных записях табличной формы
обработка выделенных записей

в выделяемой форме - субформе на событие изменение выделения обработчик из общего модуля

Код: plaintext
1.
2.
Private Sub Form_SelectionChange()
Call isSel
End Sub


в общем модуле процедура определения списка идентификаторов записей источника данных

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
Public ids_plat
Public Sub isSel()
Dim frm As Form
Dim seltop
Dim selh, sh
Dim bm, bmold
On Error Resume Next
ids_plat =  ""
' запоминаем текущие параметры субформы.

Set frm = Forms!allplat.p1allplat.Form
bm = Forms!allplat.p1allplat.Form.Bookmark
bmold = Forms!allplat.p1allplat.Form.Bookmark
seltop = Forms!allplat.p1allplat.Form.seltop
selh = Forms!allplat.p1allplat.Form.SelHeight
sh = selh

Do Until sh < 1
' переходим по записям и формируем список идентификаторов источника данных чезез запятую
ids_plat = ids_plat & Forms!allplat.p1allplat.Form.idplat & " ,  "
sh = sh - 1 
bm( 0 ) = bm( 0 ) +  1 
Forms!allplat.p1allplat.Form.Bookmark = bm
Loop

' восстановление выделения'
Forms!allplat.p1allplat.Form.Bookmark = bmold
Forms!allplat.p1allplat.Form.seltop = seltop
Forms!allplat.p1allplat.Form.SelHeight = selh

'обрезаем последнюю запятую и получаем результат список идентификаторов'
ids_plat = Left(ids_plat, Len(ids_plat) -  2 )

Debug.Print "ids_plat =" & ids_plat

End Sub

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

Код: plaintext
1.
2.
3.
4.
'ваш запрос
Rs = "SELECT * FROM .... WHERE .... "
'добавляем условие только записи чьи идентификаторы в списке

Rs = Rs &  "  and ( idplat in ( "  & ids_plat &  " )) " 



пробовал сделать проще, но все время путались записи в всвязи с различными видами сортировок и фильтров формы. Этот способ и был оставлен как самый надежный.

Кстати интересует какие еще аналогичные решения у кого есть...

А.А. Козин
...
Рейтинг: 0 / 0
15.11.2002, 14:45
    #32068381
ДиД
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сумма значений по одному полю в выделенных записях табличной формы
SelectionChange Event
из HELP:
Occurs whenever the user makes a new selection in a PivotChart view or PivotTable view.
...
Рейтинг: 0 / 0
15.11.2002, 18:09
    #32068520
Sander
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сумма значений по одному полю в выделенных записях табличной формы
А я добавил в табличку логическое поле, а на клик по записи инвертируется его значение. Чтобы было видно, а не простой чекбокс по всей длинне поле с форматированным цветом.
Это удобно еще тем, что выделенные строки можно фильтровать.
Ну и еще пришлось сделать две кнопульки выделить"все"/"ничего"
...
Рейтинг: 0 / 0
16.11.2002, 02:41
    #32068589
RatTail
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сумма значений по одному полю в выделенных записях табличной формы
Несмотря на перенесенную мною обиду на скуль.ру (в виде непонятного уменьшения
количества моих сообщений (пусть даже и малоценных) на порядка штук десять) я
сделал то, что требуется в этом топике: sel.mdb Поправки приветствуются.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сумма значений по одному полю в выделенных записях табличной формы / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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