Страницы: 1
RSS
Макросом сцепить несвязанный (рваный) диапазон и добавить результат к ячейке, Не получается сделать перебор всех ячеек разорванного диапазона
 
Здравствуйте!

Делаю макрос, который после запуска позволит выбрать на соседнем листе не связанный (рваный, по Ctrl) диапазон, соединит каждую ячейку диапазона через разделитель "; " и добавит к активной ячейке.

Сделал форму, на ней элемент RefEdit1 для выбора диапазона.

Повесил на кнопку формы такой макрос. Для связанного диапазона работает. А для "рваного" — нет.
Код
Private Sub CommandButton1_Click()
Dim Y As Range
Dim Cell As Range

Set Y = Range(RefEdit1.Text)

For Each Cell In Y
    ActiveCell.Value = ActiveCell.Value & Cell.Value & "; "
Next Cell
Me.Hide
RefEdit1.Text = ""
End Sub
Файл прилагаю.

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

Буду благодарен за помощь!
Изменено: simon100500 - 19.07.2016 16:55:41
 
Точки с запятой меняйте на запятые
Код
Set Y = Range(Replace(RefEdit1.Value, ";", ","))

' и для красоты - бонус
For Each Cell In Y
    If ActiveCell.Value = Empty Then
        ActiveCell.Value = Cell.Value
    Else
        ActiveCell.Value = ActiveCell.Value & ";" & Cell.Value
    End If
Next Cell

Изменено: Sanja - 19.07.2016 17:12:08
Согласие есть продукт при полном непротивлении сторон
 
Sanja, искренне спасибо Вам за оперативность и точное решение!
Страницы: 1
Наверх