Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/макрос, автоматически вставляющий значения - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Manyasha, SLAVICK, китин  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » макрос, автоматически вставляющий значения (Макросы/Sub)
макрос, автоматически вставляющий значения
Serge1400 Дата: Воскресенье, 07.06.2020, 17:25 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 99
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Логичнее конечно к с этим вопросом обратиться к автору макроса Сане Boroda, но я увидел, что он с начала мая на форум не заходил. Поэтому решил обратиться за помощью к общественности.
Трудится в моих расчетах макрос, сделанный мне в свое время Саней Boroda. Работает он так: при совпадении значений в ячейках колонки B. он автоматически дублирует значения в ячейках колонок K и L - значения в колонке B изначально проставляются вручную (во вложенном примере видно как все работает).

[vba]
Код

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count <> 1 Then Exit Sub
r0_ = 3
r1_ = Range("C" & Rows.Count).End(3).Row
If Not Intersect(Target, Range("K" & r0_ & ":L" & r1_)) Is Nothing Then
c_ = Target.Column
r_ = Target.Row
kod_ = CCur(Range("B" & r_))
Application.EnableEvents = 0
For i = r_ + 1 To r1_
If Len(Range("B" & i)) < 2 Then Exit For
If CCur(Range("B" & i)) = kod_ Then
Cells(i, c_) = Target.Value
Cells(i, c_).Interior.Color = Target.Interior.Color
End If
Next i
Application.EnableEvents = 1
End If
End Sub
[/vba]
Нынче появилась потребность потребность в выполнении практически такой же задачи: при совпадении значений в колонке BG должен автоматически в той же строке, но уже в колонке BF (значения изначально в этой колонке также вносятся вручную). Я честно потратил 2 дня чтобы разобраться при помощи интернета ибо знаний чуть выше нуля - переделать увы, не смог.
К сообщению приложен файл: __07.06.20.xlsm(19.4 Kb)


Сообщение отредактировал Serge1400 - Воскресенье, 07.06.2020, 17:39
 
Ответить
СообщениеЛогичнее конечно к с этим вопросом обратиться к автору макроса Сане Boroda, но я увидел, что он с начала мая на форум не заходил. Поэтому решил обратиться за помощью к общественности.
Трудится в моих расчетах макрос, сделанный мне в свое время Саней Boroda. Работает он так: при совпадении значений в ячейках колонки B. он автоматически дублирует значения в ячейках колонок K и L - значения в колонке B изначально проставляются вручную (во вложенном примере видно как все работает).

[vba]
Код

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count <> 1 Then Exit Sub
r0_ = 3
r1_ = Range("C" & Rows.Count).End(3).Row
If Not Intersect(Target, Range("K" & r0_ & ":L" & r1_)) Is Nothing Then
c_ = Target.Column
r_ = Target.Row
kod_ = CCur(Range("B" & r_))
Application.EnableEvents = 0
For i = r_ + 1 To r1_
If Len(Range("B" & i)) < 2 Then Exit For
If CCur(Range("B" & i)) = kod_ Then
Cells(i, c_) = Target.Value
Cells(i, c_).Interior.Color = Target.Interior.Color
End If
Next i
Application.EnableEvents = 1
End If
End Sub
[/vba]
Нынче появилась потребность потребность в выполнении практически такой же задачи: при совпадении значений в колонке BG должен автоматически в той же строке, но уже в колонке BF (значения изначально в этой колонке также вносятся вручную). Я честно потратил 2 дня чтобы разобраться при помощи интернета ибо знаний чуть выше нуля - переделать увы, не смог.

Автор - Serge1400
Дата добавления - 07.06.2020 в 17:25
Pelena Дата: Воскресенье, 07.06.2020, 17:28 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 16766
Репутация: 3619 ±
Замечаний: ±

Excel 2010, 2016 & Mac Excel
Не, такое название темы не пойдёт. Название темы должно отражать суть задачи. Исправьте


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
СообщениеНе, такое название темы не пойдёт. Название темы должно отражать суть задачи. Исправьте

Автор - Pelena
Дата добавления - 07.06.2020 в 17:28
Serge1400 Дата: Воскресенье, 07.06.2020, 17:36 | Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 99
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Не, такое название темы не пойдёт. Название темы должно отражать суть задачи. Исправьте

А вот так нормально?
 
Ответить
Сообщение
Не, такое название темы не пойдёт. Название темы должно отражать суть задачи. Исправьте

А вот так нормально?

Автор - Serge1400
Дата добавления - 07.06.2020 в 17:36
Pelena Дата: Воскресенье, 07.06.2020, 17:53 | Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 16766
Репутация: 3619 ±
Замечаний: ±

Excel 2010, 2016 & Mac Excel
Попробуйте вставить ещё одно условие
[vba]
Код
If Not Intersect(Target, Range("K" & r0_ & ":L" & r1_)) Is Nothing Or Not Intersect(Target, Range("BF" & r0_ & ":BG" & r1_)) Is Nothing Then
[/vba]


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
СообщениеПопробуйте вставить ещё одно условие
[vba]
Код
If Not Intersect(Target, Range("K" & r0_ & ":L" & r1_)) Is Nothing Or Not Intersect(Target, Range("BF" & r0_ & ":BG" & r1_)) Is Nothing Then
[/vba]

Автор - Pelena
Дата добавления - 07.06.2020 в 17:53
Serge1400 Дата: Воскресенье, 07.06.2020, 18:53 | Сообщение № 5
Группа: Пользователи
Ранг: Участник
Сообщений: 99
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Попробуйте вставить ещё одно условие

Вставил но либо не туда либо не так - начал ругаться на концовку Sub


Сообщение отредактировал Serge1400 - Воскресенье, 07.06.2020, 18:55
 
Ответить
Сообщение
Попробуйте вставить ещё одно условие

Вставил но либо не туда либо не так - начал ругаться на концовку Sub

Автор - Serge1400
Дата добавления - 07.06.2020 в 18:53
Pelena Дата: Воскресенье, 07.06.2020, 18:55 | Сообщение № 6
Группа: Админы
Ранг: Местный житель
Сообщений: 16766
Репутация: 3619 ±
Замечаний: ±

Excel 2010, 2016 & Mac Excel
Просто в своём коде поменяйте строчку
[vba]
Код
If Not Intersect(Target, Range("K" & r0_ & ":L" & r1_)) Is Nothing Then
[/vba]
на эту из предыдущего сообщения


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
СообщениеПросто в своём коде поменяйте строчку
[vba]
Код
If Not Intersect(Target, Range("K" & r0_ & ":L" & r1_)) Is Nothing Then
[/vba]
на эту из предыдущего сообщения

Автор - Pelena
Дата добавления - 07.06.2020 в 18:55
Serge1400 Дата: Воскресенье, 07.06.2020, 19:06 | Сообщение № 7
Группа: Пользователи
Ранг: Участник
Сообщений: 99
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Заработало, но не совсем как надо. %)
Забыл уточнить, что во втором случае работу макроса не надо привязывать в колонке B. Только BF и BG.


Сообщение отредактировал Serge1400 - Воскресенье, 07.06.2020, 19:19
 
Ответить
СообщениеЗаработало, но не совсем как надо. %)
Забыл уточнить, что во втором случае работу макроса не надо привязывать в колонке B. Только BF и BG.

Автор - Serge1400
Дата добавления - 07.06.2020 в 19:06
Pelena Дата: Воскресенье, 07.06.2020, 19:25 | Сообщение № 8
Группа: Админы
Ранг: Местный житель
Сообщений: 16766
Репутация: 3619 ±
Замечаний: ±

Excel 2010, 2016 & Mac Excel
То есть вместо B надо BF, а вместо K надо BG?


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
СообщениеТо есть вместо B надо BF, а вместо K надо BG?

Автор - Pelena
Дата добавления - 07.06.2020 в 19:25
Serge1400 Дата: Воскресенье, 07.06.2020, 19:34 | Сообщение № 9
Группа: Пользователи
Ранг: Участник
Сообщений: 99
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
То есть вместо B надо BF, а вместо K надо BG?

Спасибо! hands hands

Уже сообразил как сделать - я по сути из двух макросов один слепил.
Вроде все работает как надо и в первом и во втором случае.
 
Ответить
Сообщение
То есть вместо B надо BF, а вместо K надо BG?

Спасибо! hands hands

Уже сообразил как сделать - я по сути из двух макросов один слепил.
Вроде все работает как надо и в первом и во втором случае.

Автор - Serge1400
Дата добавления - 07.06.2020 в 19:34
Мир MS Excel » Вопросы и решения » Вопросы по VBA » макрос, автоматически вставляющий значения (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

jooble Яндекс цитирования
© 2010-2020 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!