Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.08.2012, 17:30   #1
strannick
Форумчанин
 
Регистрация: 21.10.2011
Сообщений: 433
По умолчанию Комментарии к ячейкам.

Уж извините за очередную тему, но вопрос касается несколько другой ситуации, нежели выделении ячеек цветом, как в соседней теме. Поэтому и открыл новую тему. А вопрос вот в чем: Возможно ли и как, если возможно, в примечаниях к ячейкам на листе "Общий вид" отобразить фамилии пациентов, которые в данный момент находятся в палате? Как-то в этом плане поиск меня совсем не порадовал.
Заранее спасибо!
Вложения
Тип файла: rar Палата №6 1.rar (5.0 Кб, 9 просмотров)
strannick вне форума Ответить с цитированием
Старый 25.08.2012, 17:39   #2
ikki_pf
Форумчанин
 
Регистрация: 25.02.2012
Сообщений: 166
По умолчанию

Цитата:
Сообщение от strannick Посмотреть сообщение
в этом плане поиск меня совсем не порадовал.
Заранее спасибо!
совсем ничего не нашлось?
или - только макросом?
подтверждаю - вполне можно. только макросом.
готовых решений в инете много.

Последний раз редактировалось ikki_pf; 25.08.2012 в 17:52.
ikki_pf вне форума Ответить с цитированием
Старый 25.08.2012, 17:48   #3
strannick
Форумчанин
 
Регистрация: 21.10.2011
Сообщений: 433
По умолчанию

Ага. Значит, все равно только макрос. Будем искать. Спасибо, но, я ж говорю, как-то поиск не порадовал. Значит, плохо искал. Спасибо!
strannick вне форума Ответить с цитированием
Старый 25.08.2012, 23:25   #4
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Я бы выполнял макрос при событии активации первого листа. Или при изменении на втором - но тогда макрос будет срабатывать чаще. А он не супербыстрый...
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 29.08.2012, 14:27   #5
strannick
Форумчанин
 
Регистрация: 21.10.2011
Сообщений: 433
По умолчанию

Вот попытался сваять пока для вставки в примечания хоть первого пациента, код в модуле листа:

Код:
Private Sub Worksheet_Activate()
Dim sh1 As Worksheet, sh2 As Worksheet
    Set sh1 = Sheets("Общий вид")
    Set sh2 = Sheets("База")
    Set IRange = sh1.Range("C2:L10")
For Each iCell In IRange
For j = 2 To 56

If iCell.Value = sh2.Cells(j, 1).Value Then
        iCell.AddComment Text:=sh2.Cells(j, 3).Text
        
        Exit For
                       
End If
Next

End Sub
Ничего не происходит. Чего я тут неправильно прописал?
Вложения
Тип файла: rar Палата №6.rar (9.4 Кб, 6 просмотров)
strannick вне форума Ответить с цитированием
Старый 29.08.2012, 14:46   #6
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Одного Next не хватает.
И ведь заработало! Правда не знаю, насколько качественно - но Комарова и Крокодилова занесло
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 29.08.2012, 15:14   #7
strannick
Форумчанин
 
Регистрация: 21.10.2011
Сообщений: 433
По умолчанию

А где не хватает-то? Перед End If?
strannick вне форума Ответить с цитированием
Старый 29.08.2012, 15:40   #8
strannick
Форумчанин
 
Регистрация: 21.10.2011
Сообщений: 433
По умолчанию

Ага, надо:

Next
Next

Но при следующей активации листа выдает ошибку на строке:
Код:
iCell.AddComment Text:=sh2.Cells(j, 3).Text
Я так понимаю, что надо старые Comment'ы удалить сначала, а потом добавлять новые. Так?
strannick вне форума Ответить с цитированием
Старый 29.08.2012, 15:58   #9
strannick
Форумчанин
 
Регистрация: 21.10.2011
Сообщений: 433
По умолчанию

Так оно и есть. Сначала
Код:
iCell.ClearComments
а потом уже добавлять примечания.
Ну и добавил в условия поиск других пациентов в той же палате и добавление их тоже. Только, чтобы отображались один под другим вот так:
Код:
iCell.AddComment Text:=sh2.Cells(j, 3).Text & Chr(10) & sh2.Cells(j + 1, 3).Text
strannick вне форума Ответить с цитированием
Старый 29.08.2012, 16:38   #10
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Ну и хорошо
Ещё я бы не добавлял комменты в те ячейки, где нет пациентов - думаю это тоже несложно сделать.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
переход по ячейкам Yusch Microsoft Office Excel 3 23.08.2012 10:03
Подсчет по заполненым ячейкам Kalifaks Microsoft Office Access 2 23.03.2011 12:32
Цикл по непустым ячейкам Usverь Microsoft Office Excel 1 15.11.2010 13:14
переход по ячейкам hotcoffee Microsoft Office Excel 6 26.08.2010 10:11
Комментарии к ячейкам nikolai_P Microsoft Office Excel 1 18.06.2009 13:54