powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / перевести строку 1 строку с множеством значений в столбцец
25 сообщений из 38, страница 1 из 2
перевести строку 1 строку с множеством значений в столбцец
    #39119156
Женя1987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
добрый день...подскажите как перевести строку в столбец без условий.
есть результат select
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119157
Женя1987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119161
Женя1987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
надо получить..извиняюсь..не совсем умею пользоваться формумом
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119181
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Увы, MS Access не знает про UNPIVOT.
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119188
Женя1987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,
может быть както в vba?
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119198
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В VBA - запросто. Открываешь рекордсет, читаешь, создаёшь вторую таблицу, заполняешь.
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119201
Женя1987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,
не силен в vba. изучаю только 2ой день...может быть есть пример кода?заранее благодарен
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119465
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Двумя запросами.

Запрос 1. Query1.
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
SELECT Cod,1 AS M,[1] AS K FROM Table1
UNION ALL
SELECT Cod,2,[2] FROM Table1
UNION ALL
SELECT Cod,3,[3] FROM Table1
UNION ALL
SELECT Cod,4,[4] FROM Table1
UNION ALL
SELECT Cod,5,[5] FROM Table1
UNION ALL
SELECT Cod,6,[6] FROM Table1
UNION ALL
SELECT Cod,7,[7] FROM Table1
UNION ALL
SELECT Cod,8,[8] FROM Table1
UNION ALL
SELECT Cod,9,[9] FROM Table1;

Запрос 2.
Код: sql
1.
2.
3.
4.
5.
TRANSFORM First([K])
SELECT [M]
FROM Query1
GROUP BY [M]
PIVOT [Cod];
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119482
Женя1987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
__MichelleДвумя запросами.

Запрос 1. Query1.
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
SELECT Cod,1 AS M,[1] AS K FROM Table1
UNION ALL
SELECT Cod,2,[2] FROM Table1
UNION ALL
SELECT Cod,3,[3] FROM Table1
UNION ALL
SELECT Cod,4,[4] FROM Table1
UNION ALL
SELECT Cod,5,[5] FROM Table1
UNION ALL
SELECT Cod,6,[6] FROM Table1
UNION ALL
SELECT Cod,7,[7] FROM Table1
UNION ALL
SELECT Cod,8,[8] FROM Table1
UNION ALL
SELECT Cod,9,[9] FROM Table1;

Запрос 2.
Код: sql
1.
2.
3.
4.
5.
TRANSFORM First([K])
SELECT [M]
FROM Query1
GROUP BY [M]
PIVOT [Cod];


а есби столбцов 240...все перечислить ???или как то без этого можно?
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119502
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Женя1987,
обзывать поле кодом товара есть неправильно (а если товаров 500 наименований-сколько должно быть полей )
попробуйте так:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Sub my()
Dim rs As DAO.Recordset, rs1 As DAO.Recordset, i
DoCmd.RunSQL "create table tbl (id  counter primary key ,idTovar long, ctl1 text)" ' если таблица уже существует будет ошибка
'может лучше создать её разово вручную и удалить это строку (или обработать ошибку)
Set rs = CurrentDb.OpenRecordset("ИсходнаяТабл")
Set rs1 = CurrentDb.OpenRecordset("КонечнаяТабл")
Do Until rs.EOF
    For i = 1 To rs.Fields.Count - 1
        rs1.AddNew
         rs1!товар = rs!код
         rs1!ctl1 = rs.Fields(i)
        rs1.Update
    Next
rs.MoveNext
Loop
Set rs = Nothing
Set rs1 = Nothing
End Sub
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119507
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Женя1987,

в аccess вы не сможете создать более 256 столбцов --это вам не excel 2007 с 16000 столбцами
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119513
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Женя1987,

а union вообще меньше 50 (не помню точную цифру)
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119517
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
P.Sы КонечнаяТбл-"tbl"
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119534
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И еще: если ACCESS позднее 2003 не пишите Dim rs As DAO.Recordset, пишите без "DAO"-Dim rs As Recordset
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119535
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Женя1987все перечислить ???или как то без этого можно?VBA Вы не знаете...
С SQL проблемы...
Как же еще можно?
Эврика! По щучьему велению!
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119612
Женя1987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdku,спасибо!!!Буду пробовать..а по поводу назвать поле "Код Товара"..это я неправильно принт сделал...
название поле будет любым...а в первой строчке будет код товар, а дальше как на принтскринет..
То есть задумка такова
1)взять код товара с формы(введется с поля со списком)
2)сделать выборку по коду и записать в таблицу....(то есть результат 1строчка только)
3)Перевернуть таблицу для использования данных и произведения расчетов..
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119638
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Женя1987,
Про запросы в HELPe написано:
С помощью запросов можно просматривать, анализировать и изменять данные из нескольких таблиц. Они также используются в качестве источника данных для форм и отчетов.
про отчеты :
Отчет — это гибкое и эффективное средство для организации данных при выводе на печать. С помощью отчета имеется возможность вывести необходимые сведения в том виде , в котором требуется.

Создайте отчет и располагайте в нем поля хоть "лесенкой"
ну а если уж очень хочется рекомендованная процедура все выполнит
(rs1!товар = rs!код имеется ввиду rs1!idTovar=rs!код)
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119646
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Женя1987....
3)Перевернуть таблицу для использования данных и произведения расчетов .. так калькулятора,карандаша и бумажки достаточно-нахрена для этого ACCESS
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119661
Женя1987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdkuЖеня1987....
3)Перевернуть таблицу для использования данных и произведения расчетов .. так калькулятора,карандаша и бумажки достаточно-нахрена для этого ACCESS

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

Может подскажите столкнулся с проблемой переноса sql в vba
sql выполняктся а vba ругается ошбика 3067
код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Private Sub Count_Click()
Const exp$ = "expbase"
Dim strSql As String
'CurrentDb.Execute "drop table " & exp$
strSql = "SELECT * into exp$" & vbCrLf & _
"FROM impbase " & vbCrLf & _
"(WHERE impbase.[Êîä òîâàðà]  = " & [Forms]![Form1]![VT]
CurrentDb.Execute strSql
End Sub
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119710
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зачем там VbCrlf?
А пробелы перед FROM и WHERE отсутствуют.
И exp$ раскрыть надо было.
Перед WHERE зачем скобка? Якобы разделитель такой?)))
Код: vbnet
1.
strSql = "SELECT * into " & exp$ & " FROM impbase WHERE impbase.[Êîä òîâàðà] = " & [Forms]![Form1]![VT]

К тому же, раз exp$ константа, можно ведь сразу записать
Код: vbnet
1.
strSql = "SELECT * into expbase FROM impbase WHERE impbase.[Êîä òîâàðà] = " & [Forms]![Form1]![VT]

Если [Forms]![Form1]![VT] текст, то
Код: vbnet
1.
strSql = "SELECT * into expbase FROM impbase WHERE impbase.[Êîä òîâàðà] = """ & [Forms]![Form1]![VT] & """"
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119718
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какие-то значки безумные вылезли
Код: vbnet
1.
strSql = "SELECT * into " & exp$ & " FROM impbase WHERE impbase.<что-то> = " & [Forms]![Form1]![VT]

Код: vbnet
1.
strSql = "SELECT * into expbase FROM impbase WHERE impbase.<что-то> = " & [Forms]![Form1]![VT]

Код: vbnet
1.
strSql = "SELECT * into expbase FROM impbase WHERE impbase.<что-то> = """ & [Forms]![Form1]![VT] & """"
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119721
Женя1987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
__Michelle,
спасибо заработало)))
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119723
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПЕНСИОНЕРКАЖеня1987,

а union вообще меньше 50 (не помню точную цифру)Не меньше - 50 срабатывает.
И не цифру, а число.)))
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119800
Женя1987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdku, по вашему коду создает таблицу tbl а после ошибку выдает 3078 "Не удается найти входную таблицу или запрос"ИсходнаяТабл""
...
Рейтинг: 0 / 0
перевести строку 1 строку с множеством значений в столбцец
    #39119853
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Женя1987,
-Не обзывайте поля цифрой!!
-Нумерация с поля "а"
как-то так:
...
Рейтинг: 0 / 0
25 сообщений из 38, страница 1 из 2
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / перевести строку 1 строку с множеством значений в столбцец
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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