Добрый вечер. Опять я со своими вопросами и проблемами, ну не дано мне программировать) Буду признателен помощи, не думаю что это впринципе сложно, но мой пытливый ум...уже совсем "вспотел". Есть куча столбцов с запросами. Нужно сделать таким образом что бы макрос объединял все столбцы в один. Т.е., имеем: Столбец1 Столбец2 Столбце3 и т.д. 123 12 1 123 123 2 123 123 123 Нужно что бы после работы макроса получилось следующее:
Столбец1 123 123 123 12 123 123 123 1 2
Количество запросов в столбце разное, и количество столбцов достаточно велико. Буду признателен. Спасибо заранее. Тот код который я записал при помощи стандартного записчика макросов даже не буду публиковать......не совсем то.
Добрый вечер. Опять я со своими вопросами и проблемами, ну не дано мне программировать) Буду признателен помощи, не думаю что это впринципе сложно, но мой пытливый ум...уже совсем "вспотел". Есть куча столбцов с запросами. Нужно сделать таким образом что бы макрос объединял все столбцы в один. Т.е., имеем: Столбец1 Столбец2 Столбце3 и т.д. 123 12 1 123 123 2 123 123 123 Нужно что бы после работы макроса получилось следующее:
Столбец1 123 123 123 12 123 123 123 1 2
Количество запросов в столбце разное, и количество столбцов достаточно велико. Буду признателен. Спасибо заранее. Тот код который я записал при помощи стандартного записчика макросов даже не буду публиковать......не совсем то.denver2109
Если Вы хотели без всяких премудростей упаковать несколько столбцов в один - то попробуйте кнопку из вложения (код ниже).
[vba]
Код
Sub Rio_Structure()
Dim A As Long, B As Long, C As Long Dim X As Long, ArrX()
C = Cells(1, 1).End(xlToRight).Column If C < 2 Then Exit Sub
Application.ScreenUpdating = False
For X = 2 To C A = Cells(1, 1).End(xlDown).Row B = Cells(1, X).End(xlDown).Row ReDim ArrX(1 To B, 1) ArrX = Range(Cells(1, X), Cells(B, X)).Value Range(Cells(1, X), Cells(B, X)).Value = "" Cells(A + 1, 1).Resize(B, 1).Value = ArrX Next X
Application.ScreenUpdating = True
End Sub
[/vba]
denver2109, здравствуйте.
Если Вы хотели без всяких премудростей упаковать несколько столбцов в один - то попробуйте кнопку из вложения (код ниже).
[vba]
Код
Sub Rio_Structure()
Dim A As Long, B As Long, C As Long Dim X As Long, ArrX()
C = Cells(1, 1).End(xlToRight).Column If C < 2 Then Exit Sub
Application.ScreenUpdating = False
For X = 2 To C A = Cells(1, 1).End(xlDown).Row B = Cells(1, X).End(xlDown).Row ReDim ArrX(1 To B, 1) ArrX = Range(Cells(1, X), Cells(B, X)).Value Range(Cells(1, X), Cells(B, X)).Value = "" Cells(A + 1, 1).Resize(B, 1).Value = ArrX Next X
Rioran, отличный вариант. Но есть небольшой баг. При пустых ячейках, которые не заканчивают столбцы, а в их содержании, пропускает их и сразу переходит на след столбец, в своем варианте решения, я просто выделил нужный диапазон, и пустые заменил на знак тире. Это помогло.
Rioran, отличный вариант. Но есть небольшой баг. При пустых ячейках, которые не заканчивают столбцы, а в их содержании, пропускает их и сразу переходит на след столбец, в своем варианте решения, я просто выделил нужный диапазон, и пустые заменил на знак тире. Это помогло.yurikfirst
*****Меньше телодвижений - больше времени на отдых*****