Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
rezhissser
1 / 1 / 0
Регистрация: 12.03.2016
Сообщений: 8
1

Заполнить соседние ячейки выделенного диапазона его значениями через разделитель

25.05.2016, 22:39. Просмотров 1286. Ответов 4
Метки нет (Все метки)

Помогите с макросом, который должен делать следующее:

1. Пользователь выделяет диапазон (всегда только в одном столбце)
2. Создаем массив и записываем в него значение ячеек выделенного диапазона
3. Перебираем массив и заполняем каждую соседнюю ячейку выделенного диапазона значениями выделенных ячеек через разделитель ";"
3.1 Пропускаем (не записываем) значение, которое есть в соседней слева (выделенной) ячейке

Например, выделенный диапазон из четырех ячеек с такими значениями:

1
2
3
4

Соседний столбец должен быть

2;3;4
3;4;1
4;1;2
1;2;3

P.S. Cейчас делаю в отдельной книге с помощью формул, а потом переношу результат в другую книгу. Очень долго получается..
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.05.2016, 22:39
Ответы с готовыми решениями:

Нахождение максимального и минимального значений выделенного диапазона рабочей таблицы и замена их нулевыми значениями
Разработайте подпрограмму или пользовательскую форму для нахождения максимального и минимального...

Как в гугл- таблицах сделать автоматическое копирование выделенного диапазона при конкретном значении ячейки
Доброго времени суток! Столкнулась с необходимостью создания таблицы для мини-учёта товарных...

Заполнить массив случайными значениями из диапазона от -10 до 10
Описать двумерный массив размерностью 5х5. Заполнить массив случайными значениями из диапазона...

Заполнить массив случайными значениями из диапазона от -10 до 10
Описать двумерный массив 5х5. Заполнить массив случайными значениями из диапазона от -10 до 10....

4
kalbasiatka
404 / 255 / 79
Регистрация: 27.10.2012
Сообщений: 848
26.05.2016, 09:08 2
Лучший ответ Сообщение было отмечено rezhissser как решение

Решение

Покажите кусочек файла со своими формулами. Почему такая последовательность объединения значений?

Добавлено через 11 минут
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Sub JoinSelection()
    Dim a(), b()
    Dim i&, ii&, j&, rw&, cl&
'-----------------------------
    With Selection
        a = .Value
        rw = .Row
        cl = .Column + 1
    End With
    For i = 1 To UBound(a)
        ReDim b(1 To UBound(a) - 1)
        j = 0
        For ii = 1 To UBound(a)
            If a(ii, 1) <> a(i, 1) Then
                j = j + 1
                b(j) = a(ii, 1)
            End If
        Next
        Cells(rw, cl) = Join(b, ";")
        rw = rw + 1
    Next
End Sub
1
rezhissser
1 / 1 / 0
Регистрация: 12.03.2016
Сообщений: 8
26.05.2016, 12:45  [ТС] 3
kalbasiatka, спасибо!

А я вот так делал, см вложение.
Где зеленым - там вводится диапазон, где желтым - результат
Логика - в скрытых столбцах
0
Вложения
Тип файла: xlsx 123.xlsx (24.9 Кб, 7 просмотров)
kalbasiatka
404 / 255 / 79
Регистрация: 27.10.2012
Сообщений: 848
26.05.2016, 20:02 4
Так подошло или где? Или же надо соблюдать тот порядок что в вашем примере?
0
rezhissser
1 / 1 / 0
Регистрация: 12.03.2016
Сообщений: 8
26.05.2016, 20:24  [ТС] 5
да, макрос подошел, спасибо!
0
26.05.2016, 20:24
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.05.2016, 20:24

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Выделить в каждом столбце диапазона ячейки с максимальными значениями
Доброго времени суток. Помогите расправиться с задачкой пожалуйста. Необходимо выделить красным...

При выборе значения из выпадающего списка заполнить соседние ячейки из другого листа
Здравствуйте, помогите пож сделать так, чтобы при выборе водителя из выпадающего списка на листе...

Оптимизация: Join или столбец со значениями через разделитель
Допустим есть таблица &quot;Город&quot;, и есть таблица &quot;Индексы городов&quot;. Будет огромное множество запросов...

При выборе значения из связанного выпадающего списка заполнить соседние ячейки из другого листа
Добрый день! Пытаюсь сделать таблицу для расчета стоимости мебели со связанными выпадающими...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.