Страницы: 1
RSS
Объединение ячеек с помощью формул...
 
Возможно ли объединить ячейки с помощью какой-нибудь функции... то есть при наступлении условий заданные ячейки объединяются.. как можно это реализовать?
 
Только макросом. Функция только возвращает какое-то значение, она ничего не меняет.
 
не могли бы вы продемонстрировать на примере...
 
Может быть вот так? Правда макрос я кнопке приписал. Если цифры менять в ячейках которые вы указали, они будут объединяться или разъединяться....
 
а файлик где?
 
Файл
 
А можно обойтись без кнопки? то есть чтобы в теле макроса было это прописано условие..
 
Думаю, что можно. Но не знаю как... Мне сегодня показывали, как макрос срабатывает при двойном щелчке по ячейке, но я так и не понял, как это работает... Где в коде прописать вызов...
 
Можно макрос комбинации клавиш назначить... После изменения условий будете редактировать ячейки нажав комбинацию...
 
Алексей, вам же показали код  
 
   If Range("C3") = 1 Then  
       Range("D3:F3").Merge  
       Else  
       Range("D3:F3").UnMerge  
   End If  
 
Причём тут кнопка? По кнопке просто вызывается макрос "Макрос1"  
 
 
 
Новичок VBA (Минск), чтобы макрос срабатывал по двойному щелчку на ячейке, допустим, А1, надо подвести курсор мыши к ярлычку листа (внизу слева написано "Лист1") и нажмите на этом ярлычке правой клавишей мыши, в появившемся контекстном меню выберите "Исходный текст" и вставьте в появившееся окно код  
 
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)  
   If Not Intersect(Target, Range("A1")) Is Nothing Then  
       Cancel = True  
       MsgBox "Вы щёлкнули 2 раза на ячейке А1", 64, ""  
   End If  
End Sub  
 
Теперь при двойном клике в ячейке А1 листа "Лист1" у вас будет выскакивать сообщение.    
 
Итог такое, код должен быть прописан в модуле листа.  
 
Для вашего сведения в любом файле Excel есть несколько модулей для кода  
 
- Основной модуль (например, Module1)  
- Модуль книги (модуль ЭтаКнига (ThisWorkbook)  
- Модуль листа (например, модуль Лист1)  
- Модуль формы.  
 
Во все эти модули также можно попасть через сочетание клавиш Alt+F11 и отобразив окно Project Explorer (Ctrl+R)
 
Спасибо. Я понял. Но в данном примере, который привел Алексей, по всей видимости, нужно, что бы макрос вызывался при редактировании ячейки С3. Т.е. после изменения значения. Возможно ли запускать макрос на выполнение для случая редактированя значения?
 
Private Sub Worksheet_Change(ByVal Target As Range)  
   If Not Intersect(Target, Range("C3")) Is Nothing Then  
       If Range("C3") = 1 Then  
           Range("D3:F3").Merge  
       Else  
           Range("D3:F3").UnMerge  
       End If  
   End If  
   Target.Select  
End Sub
 
Классно. Вот теперь вопрос исчерпан :-)
Страницы: 1
Читают тему
Наверх