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

Вход

Регистрация

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

 

= Мир MS Excel/Объединенная ячейка и Offset - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Объединенная ячейка и Offset (Макросы Sub)
Объединенная ячейка и Offset
RAN Дата: Среда, 06.11.2013, 11:39 | Сообщение № 1
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Мяу!
Имеем
Объединенную ячейку [A1:E1] и [A2:D2].
Требуется попасть в [G1:G2].
У меня пока мимо
[vba]
Код
Sub qq()
     For Each cl In Range("A1:A2")
         If Len(cl) Then Else cl(1).Offset(, 6).Value = "Мимо"
     Next
End Sub
[/vba]
К сообщению приложен файл: 1498700.xlsm (15.2 Kb)


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеМяу!
Имеем
Объединенную ячейку [A1:E1] и [A2:D2].
Требуется попасть в [G1:G2].
У меня пока мимо
[vba]
Код
Sub qq()
     For Each cl In Range("A1:A2")
         If Len(cl) Then Else cl(1).Offset(, 6).Value = "Мимо"
     Next
End Sub
[/vba]

Автор - RAN
Дата добавления - 06.11.2013 в 11:39
SkyPro Дата: Среда, 06.11.2013, 11:52 | Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 1206
Репутация: 255 ±
Замечаний: 0% ±

2010
[vba]
Код
Sub qq()
For Each cl In Range("A1:A2")
c = 7 - cl.MergeArea.Columns.Count
cl.Offset(0, c).Value = "In"
       Next
End Sub
[/vba]
Можно еще проверку на обьединение вставить.


skypro1111@gmail.com

Сообщение отредактировал SkyPro - Среда, 06.11.2013, 11:54
 
Ответить
Сообщение[vba]
Код
Sub qq()
For Each cl In Range("A1:A2")
c = 7 - cl.MergeArea.Columns.Count
cl.Offset(0, c).Value = "In"
       Next
End Sub
[/vba]
Можно еще проверку на обьединение вставить.

Автор - SkyPro
Дата добавления - 06.11.2013 в 11:52
RAN Дата: Среда, 06.11.2013, 11:57 | Сообщение № 3
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Благодарствую.


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеБлагодарствую.

Автор - RAN
Дата добавления - 06.11.2013 в 11:57
nilem Дата: Среда, 06.11.2013, 12:03 | Сообщение № 4
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
или
[vba]
Код
Sub qq()
Dim cl As Range
For Each cl In Range("A1:A2")
     If Len(cl) = 0 Then cl.MergeArea(1, 7).Value = "мимо"
Next
End Sub
[/vba]


Яндекс.Деньги 4100159601573
 
Ответить
Сообщениеили
[vba]
Код
Sub qq()
Dim cl As Range
For Each cl In Range("A1:A2")
     If Len(cl) = 0 Then cl.MergeArea(1, 7).Value = "мимо"
Next
End Sub
[/vba]

Автор - nilem
Дата добавления - 06.11.2013 в 12:03
Wasilich Дата: Среда, 06.11.2013, 12:49 | Сообщение № 5
Группа: Друзья
Ранг: Старожил
Сообщений: 1232
Репутация: 326 ±
Замечаний: 0% ±

2003
А чё именно через Offset? А если так?:
[vba]
Код
Sub qq()
For i = 1 To 2
      If Cells(i, 1).MergeCells = True Then Cells(i, 7) = "мимо"
Next
End Sub
[/vba]


Сообщение отредактировал Wasilic - Среда, 06.11.2013, 12:55
 
Ответить
СообщениеА чё именно через Offset? А если так?:
[vba]
Код
Sub qq()
For i = 1 To 2
      If Cells(i, 1).MergeCells = True Then Cells(i, 7) = "мимо"
Next
End Sub
[/vba]

Автор - Wasilich
Дата добавления - 06.11.2013 в 12:49
RAN Дата: Среда, 06.11.2013, 13:09 | Сообщение № 6
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
А чё именно через Offset?

Захотелось.
А если так?

А когда через Offset не получилось, так и сделал. :p

Но, поскольку мне теперь с объединенными ячейками придется бодаться много, все варианты пробую и на хвост наматываю.


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщение
А чё именно через Offset?

Захотелось.
А если так?

А когда через Offset не получилось, так и сделал. :p

Но, поскольку мне теперь с объединенными ячейками придется бодаться много, все варианты пробую и на хвост наматываю.

Автор - RAN
Дата добавления - 06.11.2013 в 13:09
AndreTM Дата: Среда, 06.11.2013, 16:05 | Сообщение № 7
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация: 500 ±
Замечаний: 0% ±

2003 & 2010
мне теперь с объединенными ячейками придется бодаться много
А я предупреждал (с) :D

Вообще-то, я, в своё время, тоже с таким сталкивался. Например, пользователю нужен объединённый прайс - и чтобы в нём можно было отобрать-посчитать, и чтобы "выглядел как прайс". Или накидать данные прямо в чек/счёт, и сразу распечатать. И перенакидать, чтобы ещё раз распечатать. И были решения "и так, и этак" - и прямо над готовой формой глумиться; и сначала накидать всё в форму кодом (включая все нужные формулы и связки). а затем сделать оформление... Но тогда у меня была возможность "отбить пальцы по задницу" за любое несанкционированное изменение формы (от изменения рамочек или цвета до вставки-удаления и правки формул) не надо мне про защиту листа - думаете, сильно помогает (в некоторых ситуациях)?
Вывод один - если пользователь сам не умеет работать с данными - то и вашу форму он будет ломать.


Skype: andre.tm.007
Donate: Qiwi: 9517375010
 
Ответить
Сообщение
мне теперь с объединенными ячейками придется бодаться много
А я предупреждал (с) :D

Вообще-то, я, в своё время, тоже с таким сталкивался. Например, пользователю нужен объединённый прайс - и чтобы в нём можно было отобрать-посчитать, и чтобы "выглядел как прайс". Или накидать данные прямо в чек/счёт, и сразу распечатать. И перенакидать, чтобы ещё раз распечатать. И были решения "и так, и этак" - и прямо над готовой формой глумиться; и сначала накидать всё в форму кодом (включая все нужные формулы и связки). а затем сделать оформление... Но тогда у меня была возможность "отбить пальцы по задницу" за любое несанкционированное изменение формы (от изменения рамочек или цвета до вставки-удаления и правки формул) не надо мне про защиту листа - думаете, сильно помогает (в некоторых ситуациях)?
Вывод один - если пользователь сам не умеет работать с данными - то и вашу форму он будет ломать.

Автор - AndreTM
Дата добавления - 06.11.2013 в 16:05
Alex_ST Дата: Среда, 06.11.2013, 22:38 | Сообщение № 8
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3209
Репутация: 609 ±
Замечаний: 0% ±

2003
все варианты пробую и на хвост наматываю.
ну, тогда уж намотай туда и мои MergePlus и ReMerge
Мне они очень в своё время помогли при фильтрации данных, которые по гениальному замыслу начальства должны были располагаться в объединённых ячейках.
Есть ещё несколько "полезняшек" для объединённых ячеек.
Не помню, выкладывал их на форуме или нет...
Но на всякий случай лови:



С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
Сообщение
все варианты пробую и на хвост наматываю.
ну, тогда уж намотай туда и мои MergePlus и ReMerge
Мне они очень в своё время помогли при фильтрации данных, которые по гениальному замыслу начальства должны были располагаться в объединённых ячейках.
Есть ещё несколько "полезняшек" для объединённых ячеек.
Не помню, выкладывал их на форуме или нет...
Но на всякий случай лови:

Автор - Alex_ST
Дата добавления - 06.11.2013 в 22:38
Alex_ST Дата: Среда, 06.11.2013, 22:39 | Сообщение № 9
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3209
Репутация: 609 ±
Замечаний: 0% ±

2003




С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
Сообщение


Автор - Alex_ST
Дата добавления - 06.11.2013 в 22:39
RAN Дата: Среда, 06.11.2013, 22:49 | Сообщение № 10
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Леш, спасибо.


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеЛеш, спасибо.

Автор - RAN
Дата добавления - 06.11.2013 в 22:49
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Объединенная ячейка и Offset (Макросы Sub)
  • Страница 1 из 1
  • 1
Поиск:

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