Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.08.2013, 11:07   #1
Vadim Lisovec
Пользователь
 
Регистрация: 16.08.2013
Сообщений: 30
По умолчанию Макрос для объединения ячеек в Excel

Здравствуйте!
Очень нужен макрос для объединения ячеек в Excel 2003 "Windows XP"
Пример как должен работать на изображении!
Помогите пожалуйста кто может
Заранее СПАСИБО!
Изображения
Тип файла: jpg Безымянный.JPG (30.5 Кб, 133 просмотров)

Последний раз редактировалось Vadim Lisovec; 20.08.2013 в 11:15.
Vadim Lisovec вне форума Ответить с цитированием
Старый 20.08.2013, 11:26   #2
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Минимально дополнил записанное рекордером:
Код:
Sub Macro1()
'
' Macro1 Macro
' Macro recorded 20.08.2013 by IB
'

'
    Dim a()
    Application.DisplayAlerts = False
    Range("A1:A2").Select
    a = Selection.Value
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlBottom
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
    Selection.Merge
    Selection.Value = Join(Application.Transpose(a), Chr(10))
    Range("B1:B2").Select
    a = Selection.Value
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlBottom
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
    Selection.Merge
    Selection.Value = Join(Application.Transpose(a), Chr(10))
    Range("C1:C2").Select
    a = Selection.Value
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlBottom
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
    Selection.Merge
    Selection.Value = Join(Application.Transpose(a), Chr(10))
    Application.DisplayAlerts = True
End Sub
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 20.08.2013 в 11:32.
Hugo121 вне форума Ответить с цитированием
Старый 20.08.2013, 11:32   #3
Vadim Lisovec
Пользователь
 
Регистрация: 16.08.2013
Сообщений: 30
По умолчанию

Спасибо большое очень помогло
ОГРОМНОЕ СПАСИБО !!!

Последний раз редактировалось Vadim Lisovec; 20.08.2013 в 11:36.
Vadim Lisovec вне форума Ответить с цитированием
Старый 20.08.2013, 11:40   #4
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Чуть пооптимизировал:
Код:
Sub Macro2()
    Dim a()
    Application.DisplayAlerts = False
    With Range("A1:A2")
        a = .Value: .MergeCells = True
        .Value = Join(Application.Transpose(a), Chr(10))
    End With
    With Range("B1:B2")
        a = .Value: .MergeCells = True
        .Value = Join(Application.Transpose(a), Chr(10))
    End With
    With Range("C1:C2")
        a = .Value: .MergeCells = True
        .Value = Join(Application.Transpose(a), Chr(10))
    End With
    Application.DisplayAlerts = True
End Sub
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 20.08.2013, 11:42   #5
Vadim Lisovec
Пользователь
 
Регистрация: 16.08.2013
Сообщений: 30
По умолчанию

Блин нужно для 6 столбцов !!!
Vadim Lisovec вне форума Ответить с цитированием
Старый 20.08.2013, 11:44   #6
Vadim Lisovec
Пользователь
 
Регистрация: 16.08.2013
Сообщений: 30
По умолчанию

вот такой вид имеет мой документ мне нежно что бы все 6 столбцов
Изображения
Тип файла: jpg Безымянный.jpg (117.0 Кб, 135 просмотров)

Последний раз редактировалось Vadim Lisovec; 20.08.2013 в 11:52.
Vadim Lisovec вне форума Ответить с цитированием
Старый 20.08.2013, 11:52   #7
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

А что, в коде не можете найти где прописаны диапазоны?
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 20.08.2013, 11:54   #8
Vadim Lisovec
Пользователь
 
Регистрация: 16.08.2013
Сообщений: 30
По умолчанию

К сожалению нет я не селен в этом !
Если вам не трудно помогите еще раз пожалуйста !
еще нужно что бы не для одной строки а для всех, и для 6 столбцов

Последний раз редактировалось Vadim Lisovec; 20.08.2013 в 11:58.
Vadim Lisovec вне форума Ответить с цитированием
Старый 20.08.2013, 12:04   #9
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Трудно.
Трудно и файл делать, и понять, что именно нужно.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 20.08.2013, 12:09   #10
Vadim Lisovec
Пользователь
 
Регистрация: 16.08.2013
Сообщений: 30
По умолчанию

Я извиняюсь за то что надоедаю ну просто очень нужен такой макрос, нужен для того что бы объединялись все строки и все 6 столбцов!
Что бы имело все такой вид
Изображения
Тип файла: jpg Безымянный.JPG (110.0 Кб, 136 просмотров)
Vadim Lisovec вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Макрос для объединения ячеек Excel wadzik Microsoft Office Excel 12 24.10.2017 21:32
макрос для объединения ячеек BAP9IT Microsoft Office Word 2 15.11.2012 19:43
Макрос, который выполнит функцию снятия объединения ячеек Bocul Microsoft Office Excel 2 23.06.2012 23:40
Макрос для объединения ячеек с нулями SOS!!! DJTreeno Microsoft Office Excel 12 15.06.2011 14:30
Макрос для объединения одинаковых ячеек Internal2 Microsoft Office Excel 2 05.11.2009 14:00