powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Выгрузить данные в обьедененные экселевские ячейки
12 сообщений из 12, страница 1 из 1
Выгрузить данные в обьедененные экселевские ячейки
    #37364178
Che0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Надо с помощью VBA выгрузить в экселевскую колонку данные. но надо что бы каждая единица данных размещалась в ячейке состоящей из 4 обьеденных обычных ячеек, что бы потом в соседней колонке напротив каждой записи можно было сделать по 4 пункта.
PS Данные выгружаю из ms sql server
...
Рейтинг: 0 / 0
Выгрузить данные в обьедененные экселевские ячейки
    #37364183
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что именно вызывает затруднение? Подключение серверу? Получение данных? Объединение ячеек?
...
Рейтинг: 0 / 0
Выгрузить данные в обьедененные экселевские ячейки
    #37364191
Che0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,
именно выгрузка в обьеденненные ячейки.

вот таким образом я просто выгружаю данные в столбец
Код: plaintext
1.
2.
3.
Set rs = CreateObject("adodb.recordset")
rs.Open "SELECT  Name  FROM Asteros_App.dbo.Table"
Range("A1").CopyFromRecordset rs

т.е. как я понимаю сначала надо пройтись по столбцу и преобразовать ячейки, а потом записывать данные. что бы пройтись по столбцу мне надо знать конечное число записей полученных из запроса. как мне это узнать?!!!!

и после преобразования ячеек если применить тот же
Код: plaintext
Range("A1").CopyFromRecordset rs
то вносяться только каждая четвертая запись(Та что соответсвует верхней границе обьеденненной ячейки.
...
Рейтинг: 0 / 0
Выгрузить данные в обьедененные экселевские ячейки
    #37364195
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
посколькуChe0вносяться только каждая четвертая записьто
Che0надо знать конечное число записей полученных из запросабессмысленно, хотя и можно.

Предлагаю сначала вставить записи, в необъединенные ячейки, а потом пройтись циклом с конца с N*4-й строки до верха, объединяя ячейки и перенося записи.
...
Рейтинг: 0 / 0
Выгрузить данные в обьедененные экселевские ячейки
    #37364202
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну или как вариант, не пользоваться CopyFromRecordset, а просто устроить цикл по записям, поочередно объединяя ячейки и вставляя данные из рекордсета.
...
Рейтинг: 0 / 0
Выгрузить данные в обьедененные экселевские ячейки
    #37364220
Che0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а можно пример как по записям проходить?
...
Рейтинг: 0 / 0
Выгрузить данные в обьедененные экселевские ячейки
    #37364231
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Che0а можно пример как по записям проходить?
Код: plaintext
1.
2.
3.
Do Until rs.EOF
  Debug.Print rs("Name")
  rs.MoveNext
Loop
...
Рейтинг: 0 / 0
Выгрузить данные в обьедененные экселевские ячейки
    #37364237
Che0,
можно попробовать извратиться с запросом:
Код: plaintext
1.
2.
3.
4.
5.
6.
SELECT  iif(b.nomer= 1 , Name,'') NAME2  
FROM Asteros_App.dbo.Table
    full join 
(select  1  nomer
union all select  2 
union all select  3 
union all select  4 ) b
не проверял, но надеюсь, что получится
NAME2Первое имя{пустая строка}{пустая строка}{пустая строка}Второе имя{пустая строка}{пустая строка}{пустая строка}Третье имя...
...
Рейтинг: 0 / 0
Выгрузить данные в обьедененные экселевские ячейки
    #37364243
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробуй камнем,

Можно, но
1) все равно вручную объединять ячейки, так что цикл все равно понадобится
2) сортировочка нужна
...
Рейтинг: 0 / 0
Выгрузить данные в обьедененные экселевские ячейки
    #37364255
Shocker.Pro,
действительно, без сортировки не работает как хотелось бы.
И от цикла для объединения ячеек никуда не денешься...
Обломм :(
...
Рейтинг: 0 / 0
Выгрузить данные в обьедененные экселевские ячейки
    #37364258
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробуй камнем,

Я сам любитель создать красивый запрос, позволяющий отказаться от его дальнейшей обработки
Но в данном случае бессмысленно.
...
Рейтинг: 0 / 0
Выгрузить данные в обьедененные экселевские ячейки
    #37365336
Djon Player
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чтобы обойтись без цикла при объединении ячеек, можно сделать примерно так (адреса ячеек ставить свои):
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Sub Объединение_строк_с_шагом()
 
 With Range("A1:D4")
   .Merge
   .Copy
   Range("A5:D2000").PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
 End With
 
 Application.CutCopyMode = False
 
End Sub
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Выгрузить данные в обьедененные экселевские ячейки
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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