0 / 0 / 0
Регистрация: 01.03.2013
Сообщений: 7
|
||||||
1 | ||||||
Excel Объединение ячеек при вставке в разных диапазонах01.03.2013, 14:02. Показов 6911. Ответов 13
Метки нет (Все метки)
Здравствуйте! Нужна помощь при создании макроса...
Дано 3 столбца, как объединить ячейки с одинаковыми значениями при помощи макроса при вставке (чтобы не приводило к потере информации) в данных диапазонах (например столбцы С1:С50, К1:к50, Н1:н50)... Вот код, но он не до конца работает, только по стлобцу А и принажатии вручную макроса
0
|
01.03.2013, 14:02 | |
Ответы с готовыми решениями:
13
Объединение ячеек одного столбца при совпадении ячеек в другом Объединение содержимого нескольких ячеек при различных условиях Объединение содержимого ячеек в одну при нескольких условиях Создать макрос для рабочей книги MS Excel, позволяющий формировать значения в диапазонах ячеек |
0 / 0 / 0
Регистрация: 01.03.2013
Сообщений: 7
|
|
01.03.2013, 14:05 [ТС] | 2 |
0
|
0 / 0 / 0
Регистрация: 01.03.2013
Сообщений: 7
|
|
02.03.2013, 08:16 [ТС] | 4 |
0
|
5472 / 1150 / 50
Регистрация: 15.09.2012
Сообщений: 3,518
|
|
02.03.2013, 08:31 | 5 |
Mila_str,
0
|
0 / 0 / 0
Регистрация: 01.03.2013
Сообщений: 7
|
|
02.03.2013, 09:50 [ТС] | 6 |
Нет, я вношу данные в столбцы А, С, К и в этих же столбцах должно происходить изменение...просто на рисунке показала в разных столбцах, чтобы было видно, что есть и как должно быть...
Изменения должны происходить также как в этом документе... А как можно сделать так.rar
0
|
0 / 0 / 0
Регистрация: 01.03.2013
Сообщений: 7
|
|
02.03.2013, 10:49 [ТС] | 8 |
Например. Изменения в "Лист1" в ячейку "А2" вношу значение 1, в "А3" вношу значение 1 ,"А4" вношу значение 1 и.т.д если в ячейка А2, А3, А4 будут одинаковые значения (т.е. 1) , то эти ячейки должны объединиться см.пример 1, а если нет, то ничего не надо делать см.пример 2
0
|
4377 / 661 / 36
Регистрация: 17.01.2010
Сообщений: 2,134
|
|||||||||||
02.03.2013, 20:42 | 10 | ||||||||||
Здрасьте. А прогнать циклом столбцы, и в него вписать что-то типа:
Добавлено через 1 час 21 минуту Попробуйте так сделать. Хотя я, честно, не понимаю для чего обьединение. Все стараются от этого уйти, если есть возможность.
0
|
0 / 0 / 0
Регистрация: 01.03.2013
Сообщений: 7
|
|
04.03.2013, 10:21 [ТС] | 11 |
Igor_Tr, Здравствуйте! Я так поняла, что этот код только считает по столбцу А? и что-то он у меня зависает..когда я его прогоняю...А как можно сделать не по одному столбцу?
У меня данные заполняются построчно, данные уже упорядочены...и известно, что в столбцах А, С, Е и Н должны объединяться ячейки с одинаковыми значениями (например при нажатии клавиши enter), хотя нужно чтобы срабатывало это автоматически.....
0
|
4377 / 661 / 36
Регистрация: 17.01.2010
Сообщений: 2,134
|
||||||||||||||||
04.03.2013, 13:59 | 12 | |||||||||||||||
Замените вот эти две строки
1. Определил по каким-то признакам (например, перебрал циклом шапку) НОМЕРА столбцов, к которым хочу применить все написанное выше (например, мне нужны ст.А, ст.С, ст.F). В даном случае это будет массив номеров 1, 3, 6. 2. Номера загнал в массив (~ arrColumn()). 3. Добавил несколько строк в мой код. В конце выглядело б все вот так:
Добавлено через 19 минут Подумал тут. Давайте для пробы укажем вручную номера столбцов arrColumnn=Array(a,b,....,n) - где (a, b,...., n) реальные номера нужных Вам столбцов. Протестируйте, а дальше подумаете, как автоматизировать определение a, b,...., n И нужны, все таки изменения (извините, на работе, дергают)
0
|
0 / 0 / 0
Регистрация: 01.03.2013
Сообщений: 7
|
|
04.03.2013, 14:41 [ТС] | 13 |
Спасибо за ответы...у меня известны номера столбцов какие надо менять так, что они постоянны, но у меня выдает ошибку я добавляла еще один Next (For without Next – Использование For без Next)...может не туда...потому, что там другие начали ошибки выходить....Как правильно изменить?
0
|
4377 / 661 / 36
Регистрация: 17.01.2010
Сообщений: 2,134
|
||||||
04.03.2013, 15:25 | 14 | |||||
Правильно, пропустил, потому-что пишу прямо в здесь в окне, а не в модуле. После "next i" нужно "next j"
Добавлено через 16 минут Да, и цыклы реагируют на уставку Option base. Если Вы не выставили Option base 1, тогда цикл For j=lbound(arrColumn) to ubound(arrColumn) сразу будет ругаться. Проще всего выйти с этого так: В самом-самом верху модуля, сразу под Option Explicit (если есть), напишите Option base 1. Другими словами, индекс первого элемента массива будет не ноль (как по умолчанию), а 1. Можно оставить и установку по умолчанию, но тогда нужны доп. действия. Добавлено через 9 минут Вы меня сейчас УБЬЕТЕ. Все, что к Option Base - правильно. Но есть грубейшая ошибка. И вроде трезвый. Нам нужен не индекс массива arrColumn, А ЕГО ЗНАЧЕНИЕ!!!!. Т. е. arrColumn(j)
1
|
04.03.2013, 15:25 | |
04.03.2013, 15:25 | |
Помогаю со студенческими работами здесь
14
Ошибка при сравнении значений ячеек в разных книгах Сравнение ячеек на разных страницах и копирование строки при совпадении Выбрать данные из разных (конкретных) ячеек листа, произвести замену данных ячеек Cбор данных с разных одинаковых по смыслу, но разных по значению ячеек, книг Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |