Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Формирование отчета с переменным числом полей / 25 сообщений из 29, страница 1 из 2
09.12.2003, 06:45
    #32347221
gal
gal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
Подскажите пожалуйста...
Проблема:
Sql-запрос, о котором спрашивала ранее, сформировала, он хранится в строке.
Теперь необходимо из 26 полей, хранящихся в таблице, выбрать любые 10. Это я тоже сделала.
И построить отчет, но проблема в том, что более половины хранящихся в таблице полей - поля со списками. И вообще все поля имеют разные типы.
Как бы покорректней это реализовать?
Имена полей, заголовки - выбрать не проблемно, но вот заполнить отчет записями...
_______________
Access 2000
...
Рейтинг: 0 / 0
09.12.2003, 08:54
    #32347280
Темный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
galSql-запрос, о котором спрашивала ранее, сформировала, он хранится в строке.
Замечательно.
galТеперь необходимо из 26 полей, хранящихся в таблице, выбрать любые 10. Это я тоже сделала.
Великолепно.
gal...что более половины хранящихся в таблице полей - поля со списками.
Это как?
galИ вообще все поля имеют разные типы.
И что?
galКак бы покорректней это реализовать?
Что именно?
galИмена полей, заголовки - выбрать не проблемно, но вот заполнить отчет записями...
Вот этого я вообще понять не могу. Вы отчет ручками хотите заполнять???
...
Рейтинг: 0 / 0
09.12.2003, 08:56
    #32347283
Roalex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
В зависимости от конкретного примера можно попробовать:
1. Менять источник строк в отчете.
2. Менять сам источник строк.
3. Сделать отдельную таблицу (или хранить в модуле отчета информацию) о том, какое поле как называть и как обрабатывать (и обрабатывать ли), т.е. своеобразный узконаправленный визард, запускающийся при загрузке отчета.
4. Наверное куча других вариантов. :)
...
Рейтинг: 0 / 0
09.12.2003, 12:17
    #32347614
gal
gal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
Получается, что ручками :(.
Ну не понимаю я как это сделать.
Полей может быть или одно, или 10, как менять ширину столбцов в зависимости от числа полей, как заполнять?
...
Рейтинг: 0 / 0
09.12.2003, 12:45
    #32347678
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
Вот можно скрыть столбец в событии, скажем, открытие отчета
Private Sub Report_Open(...)
me.controls("НадписьПоля").Visible = false
me.controls("СамоПоле").Visible = false
me.controls("Линия разграфки").Visible = false
...

Так можно подвинуть следующее поле на место спрятанного:
me.controls("СледПоле").Left = me.controls("СамоПоле").Left

F1 тебе в помощь..
...
Рейтинг: 0 / 0
09.12.2003, 13:27
    #32347761
Alexus12
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
удобнее будет вопсользоваться выводом данных с переменным числом полей в Эксель
форматировать как угодно можно будет
смотри хэлп на CreateObject() и GetObject()
...
Рейтинг: 0 / 0
09.12.2003, 13:29
    #32347768
Темный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
Ну дык. А из рекордсета в Ёксель - вообще благодать.
...
Рейтинг: 0 / 0
09.12.2003, 13:32
    #32347776
gal
gal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
Спасибо, я попробую!!
...
Рейтинг: 0 / 0
11.12.2003, 13:52
    #32350673
gal
gal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
Мдя...
С выводом в excel разобралась, спасибо!!
Но возник еще один вопросик.
У меня SQL запрос, на основе которого формируется recordset выбирает все поля из таблицы, а на экран нужно вывести несколько, причем известно только имя поля, которое вычисляется и хранится в ress
s1 = Forms!repon.sp2.ItemData(numF - 1)
While i < rst.Fields.Count
s = CStr(CurrentDb.TableDefs("mt_xx_id").Fields(i).Properties("Caption"))
If s = s1 Then
ress = CStr(CurrentDb.TableDefs("mt_xx_id").Fields(i).Properties("Name"))


как теперь его достать из recordset?
Чего-то я недопонимаю :((
...
Рейтинг: 0 / 0
11.12.2003, 14:10
    #32350713
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
gal писалаЧего-то я недопонимаю :((
однозначно что-то ты недопонимаешь. ща придут телепяты и протелепячат - что же именно ты недопонимаешь
Темный, это твой шанс! Ответить на еще не заданный вопрос!
...
Рейтинг: 0 / 0
11.12.2003, 14:11
    #32350716
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
На всякий случай (если Темный в запое)

как теперь его достать из recordset?
Код: plaintext
rst.Fields(ress)
...
Рейтинг: 0 / 0
11.12.2003, 14:17
    #32350738
gal
gal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
Ну спасибо!!!
...
Рейтинг: 0 / 0
11.12.2003, 14:22
    #32350754
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
эээ?
...
Рейтинг: 0 / 0
11.12.2003, 15:25
    #32350857
Serafim
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
поздно пришел, но есть еще одна идея - если Вы не до конца решили свою проблему - могу поделиться...
...
Рейтинг: 0 / 0
16.12.2003, 09:40
    #32353439
gal
gal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
Подскажите пожалуйста

Все по той же теме,
rst.Fields(ress)
как в зависимости от типа поля можно отформатировать столбец в excel - то есть присвоить ему какой-либо тип(если Data, то Data), при выводе отчета в excell же? То есть номер столбца хранится в переменной numF.
У меня не получилось Selection воспользоваться.

_______________
Access 2000
...
Рейтинг: 0 / 0
16.12.2003, 09:58
    #32353460
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Select Case rst.Fields(ress).Type
    Case dbDate
        ' Форматируем эксельный столбец как дату '
    Case dbBigInt, dbByte, dbDecimal, dbFloat, dbInteger, dbLong, dbNumeric, dbSingle
        ' форматируем как число '
    Case Else
        '  форматируем как что-то еще '
End Select


А собственно форматирование экселя - через св-во NumberFormat объекта Range
...
Рейтинг: 0 / 0
16.12.2003, 10:08
    #32353475
gal
gal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
>> А собственно форматирование экселя - через св-во NumberFormat объекта Range
Вот именно это меня и интересовало.... КАК??
_______________
Access 2000
...
Рейтинг: 0 / 0
16.12.2003, 10:14
    #32353481
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
Например так
Код: plaintext
1.
2.
Worksheets(номерлиста).Columns(номерстолбца).NumberFormat =  "dd/mm/yy"  ' Для даты '
Worksheets(номерлиста).Columns(номерстолбца).NumberFormat =  "0 . 00 " ' Число с двумя знаками после запятой '
Worksheets(номерлиста).Columns(номерстолбца).NumberFormat =  "General"  ' Общий '
...
Рейтинг: 0 / 0
17.12.2003, 05:08
    #32354644
gal
gal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
вчера не успела,

СПАСИБО!
...
Рейтинг: 0 / 0
26.12.2003, 06:04
    #32363929
gal
gal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
А еще подскажите пожалуйста

При выводе в Excel отчета мне необходимо шапку расчертить(то есть сделать рамку), как это сделать, если число полей равно NumF???

_____________
Access 2000
...
Рейтинг: 0 / 0
26.12.2003, 07:05
    #32363948
Shark
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
Есть в Excel клевая фича, называется записать макрос. Я Excel.Application объект знаю не так чтобы очень, потому что редко сталкиваюсь. Поэтому, когда мне надо чего-то сделать в Excel, я записываю макрос а потом смотрю на его код. И усе.
Это удочка вместо рыбы:-)
...
Рейтинг: 0 / 0
26.12.2003, 07:20
    #32363951
Alexander G
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
Код: 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.
36.
Public Sub subLineAll(obj As Object)
On Error Resume Next
With obj
.Borders(xlDiagonalDown).LineStyle = xlNone
.Borders(xlDiagonalUp).LineStyle = xlNone
.Borders(xlEdgeLeft).LineStyle = xlContinuous
.Borders(xlEdgeLeft).Weight = xlThin
.Borders(xlEdgeLeft).ColorIndex = xlAutomatic

.Borders(xlEdgeTop).LineStyle = xlContinuous
.Borders(xlEdgeTop).Weight = xlThin
.Borders(xlEdgeTop).ColorIndex = xlAutomatic

.Borders(xlEdgeBottom).LineStyle = xlContinuous
.Borders(xlEdgeBottom).Weight = xlThin
.Borders(xlEdgeBottom).ColorIndex = xlAutomatic

.Borders(xlEdgeRight).LineStyle = xlContinuous
.Borders(xlEdgeRight).Weight = xlThin
.Borders(xlEdgeRight).ColorIndex = xlAutomatic

.Borders(xlInsideVertical).LineStyle = xlContinuous
.Borders(xlInsideVertical).Weight = xlThin
.Borders(xlInsideVertical).ColorIndex = xlAutomatic

.Borders(xlInsideHorizontal).LineStyle = xlContinuous
.Borders(xlInsideHorizontal).Weight = xlThin
.Font.Size =  8 
.VerticalAlignment = xlCenter
.HorizontalAlignment = xlCenter
.WrapText = True
End With
End Sub

Call subLineAll(Worksheets( "Sheet1" ).Range(Cells( 1 ,  1 ), Cells( 1 , NumF)))




Вот все, что я могу об этом рассказать (с)Форрест Гамп
...
Рейтинг: 0 / 0
12.01.2004, 10:54
    #32372778
gal
gal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
Да не в том дело, макрос записать можно, но как сделать это именно для переменного числа полей, там же вроде диапазон конкретно указывается
:((

_______________
Access 2000
...
Рейтинг: 0 / 0
12.01.2004, 10:58
    #32372783
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
Ыыы???

Тебе же даже кусок кода привели
Copy - Paste пора бы уже и освоить
...
Рейтинг: 0 / 0
13.01.2004, 07:42
    #32373814
gal
gal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формирование отчета с переменным числом полей
ааа, сорри, я помотрела начало, до конца не дошла.. :))
_______________
Access 2000
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Формирование отчета с переменным числом полей / 25 сообщений из 29, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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