Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Microsoft office - word, excel, powerpoint... самоучитель


Советы и рекомендации по работе в Microsoft office - word, excel, powerpoint, access, visio, outlook. Самоучитель - как организовать самостоятельное изучение этих программ. Компьютерная помощь и советы пользователя
Microsoft Office - совет дня.

Эффективные рекламные кампании в Интернете.
Немного Юмора:
Чем хороши плоские анекдоты - их в голове больше помещается...
Анекдот должен быть коро... Дальше>>

Пишите автору

Реклама и консультации

Рекомендую подписаться! Интересные и полезные рассылки.
Хорошее настроение! Смешные истории. Анекдоты.
Лучшие сайты. Обмен ссылками
Планирование карьеры. Как правильно составить резюме?
Работа в Москве. Рынок вакансий.
Читать книги! Рецензия на книгу.
Умные мысли. Афоризмы и цитаты.
Метафоры в жизни.
Лучшие цитаты и афоризмы о жизни и о бизнесе
Бизнес в условиях кризиса. Бизнес новости.
Маркетинговая стратегия.
Интернет маркетинг. Реклама в интернете
Антикризисное управление.
Современный мир. Глобальные проблемы.
Аренда квартир в Москве.
Обслуживание компьютеров
Раскрутка продвижение сайта.
Создание сайтов недорого. Анализ и оптимизация сайта. Раскрутка и продвижение в интернете.
Microsoft Office - совет дня
___________________________

Рассылка новостей
Выпуск от 2009-12-04 16:13

Здравствуйте, дорогие читатели! Вопросы и предложениям присылайте на msoffi@mail.ru. .


После предыдущего выпуска по "работе со списками" я получил письмо со следующим вопросом:
Возможно ли взаимосвязывать ячейки?
Например:
1. В одной ячейке у меня создан список клиентов и после выбора конкретного клиента в следующей ячейке чтобы выпадал список сотрудников, непосредственно относящейся только к выбранному клиенту?
2. Или вот, разбивка по платежам. В одной ячейке забиваю 10% оплаты,а в соседней автоматически ставит 90%?

Давайте сегодня вместе искать ответы на данные вопросы.
Возможно, кому-то потребуется почитать предыдущий выпуск Работа со списками , или еще более ранние выпуски: здесь нужно найти материал по работе условных операторов (If ... Else ... End If), или начальные сведения о макросах тут... и тут .
Хотя, те кто привык усваивать материал "по мере поступления", вспоминая все "по ходу дела", можно и не читать старые выпуски. Единственное, что рекомендуется - отвлечься немного от чтения и самостоятельно подумать над тем, как бы Вы сами стали решать данные задачи. Вполне возможно, что Вы сами найдете красивое решение. Приглашаю всех присылать свои варианты обсуждаемых в нашей рассылке задач. Так как я ориентируюсь на "читателя со среднем уровнем подготовки" и примерно таким же уровнем усидчивости, то чем больше я буду получать писем с "легкими вопросами" или с "более сложными вопросами", ориентированными на более сложные решения, то и у Вас будет больше шансов получать рассылку ориентированную "на Вас".

Итак. Мы освежили материал по работе со списками. Создаем на 3м листе список менеджеров (Иванов, Петров, Сидоров, Медведев), выделяем ячейки с фамилиями, называем этот диапазон "Менеджеры". Далее - делаем списки:
ООО 111 иванов ООО 112 иванов ООО 113 иванов ООО 114 иванов, называем этот список "КлиентыИванова" (без пробела);
ЗАО 111 петров ЗАО 112 петров ЗАО 113 петров ЗАО 114 петров - "КлиентыПетрова";
ОАО 111 сидоров ОАО 112 сидоров ОАО 113 сидоров ОАО 114 сидоров - "КлиентыСидорова";
Общие клиенты 01 Общие клиенты 02 Общие клиенты 03 - "ОбщиеКлиенты";
В результате мы получим примерно такую картину (хотя списки можно располагать в любых местах, например - в разных колонках, "назначать" списку всю колонку... ):

 

Менеджера Медведева и Общих клиентов я ввел "на всякий случай". Да и опыт подсказывает, что для более гибкой работы нужно предусмотреть как можно больше различных вариантов. В вашем случае можно предусмотреть еще что-то. Я же хотел "охватить" хотя бы ту ситуацию, когда в "поле менеджера" не будет фамилии (например забыли занести), или появится менеджер, за которым еще не закрепили "своих клиентов". На этом "подготовительный этап" завершен. Мы еще раз отвлекаемся от чтения рассылки и "ищем свой метод решения поставленной задачи". :). Тем, кто не очень любит "разбираться в тонкостях программирования" и "читать руководства" предлагаю "универсальный" способ - запускаете "Запись макроса", делаете нужные Вам действия, останавливаете макрос и "вносите тонкие исправления в полученный код".

Итак. На 1м листе у нас находится таблица, в которой у нас будут связные списки. В этой таблице мы делаем ячейку(колонку) со списком Менеджеров (смотри предыдущий выпуск - через меню "Данные" - "Проверка" - тип данных "Список", Источник "=Менеджеры"...). Я сделал выбор Менеджеров в ячейке C4.
Вот сейчас и наступил самый удобный момент запустить запись макросов, и сделать в соседней ячейке список "КлиентыИванова" (например). После того, как в ячейке D4 готов список с "КлиентыИванова", мы останавливаем запись макроса и начинаем его редактировать ("Сервис" - "Макросы" - "Изменить").
Изначально у нас должно быть что-то примерно такое:

 

Sub СвязныеСписки()
'
' СвязныеСписки Макрос
' Макрос записан 04.12.2009 (adm)
'

'
Range("D4").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=КлиентыИванова"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub


Мы находим нужную нам строчку с "=КлиентыИванова". Нам нужно сделать так, чтобы в этом месте появлялся список менеджера, который уже выбран в ячейке C4 (у Вас может быть другая ячейка). Не вдаваясь в слишком подробные объяснения приведу один из возможных вариантов, который может получиться после исправления:

Sub СвязныеСписки()
'
' СвязныеСписки Макрос
' Макрос записан 04.12.2009 (adm)
'

'
Range("D4").Select
With Selection.Validation
.Delete

If Cells(4, 3) = "Иванов" Then
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=КлиентыИванова"
End If

If Cells(4, 3) = "Петров" Then
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=КлиентыПетрова"
End If

If Cells(4, 3) = "Сидоров" Then
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=КлиентыСидорова"
End If

If Cells(4, 3) = "" Then
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=ОбщиеКлиенты"
End If

If Cells(4, 3) = "Медведев" Then
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=ОбщиеКлиенты"
End If


.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub

Если у вас большая таблица, для того, чтобы не запутаться с ячейками, можно ввести переменные R - текущая строка и C - колонка. Тогда наша текущая ячейка запишется в таком виде:



Sub СвязныеСписки()
'
' СвязныеСписки Макрос
' Макрос записан 04.12.2009 (adm)
'

'
Range("D4").Select
With Selection.Validation
.Delete
R = 4
C = 4

If Cells(R, C - 1) = "Иванов" Then
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=КлиентыИванова"
End If
...
...
End With
End Sub

Итак, мы получили готовый макрос, который будет в нужной нам ячейке (ячейках) проставлять те списки, которые "связаны" с содержимым другой ячейки. Если у нас "много таких ячеек" в одной колонке, то в макросе придется править довольно много данных. Подумайте - как можно "оптимизировать" наш макрос для колонок связанных ячеек. Присылайте свои варианты решения. Если не получится, но эта задача будет интересна Вам - тоже пишите. То, как нужно будет исправлять макрос зависит от оптимального для вас способа занесения данных. Например - Вы привыкли заносить данные "по колонкам", или "по строчкам"...
Еще один момент. Полученный макрос желательно запускать сочетанием клавиш. Так будет быстрее. Про назначение макросу клавиш я уже писал в одном из предыдущих выпусков. (например для Excel 2003 - "Сервис"- "Макрос" - "Макросы" - "Параметры" - вводим нужную букву, для вызова по сочетанию "Ctrl+...")


Вторую часть нашей задачи можно решать похожим образом, если она связана со списками (список %)... Если же в ячейках связаны между собой 2 значения (если в одной ячейке находится 10, то в другой должно быть 90, иначе - 0 или пусто), то можно попытаться использовать стандартные функции. Например - логическую функцию Если (Вставка- Функции - категория Логические - Если). В результате, в одной ячейке у нас будет 10 (10%), а в другой - формула "=ЕСЛИ(RC[-1]=10;90;0)". Если мы укажем "=ЕСЛИ(RC[-1]=10;90)", то в любом случае, когда в исходной ячейке у нас будет не 10, в ячейке с формулой будет значение "ЛОЖЬ". Формулу с функцией ЕСЛИ нужно подстраивать под нужный нам тип данных. Например, если в исходной ячейке у нас 10% (т.е. формат "Процентный"), то в следующей ячейке будет такая формула: "=ЕСЛИ(RC[-1]=10%;90%;"")". Здесь вместо слова ЛОЖЬ я ввел "пустое" текстовое значение "", а вместо числа 90 ввел 90%. Таким образом можно связывать между собой любые значения любых типов. Применительно к функции ЕСЛИ мы имеем, если в одной ячейке находится A, то в другой ячейке будет B, иначе C (или слово ЛОЖЬ, если С не указано). Логично и саму ячейку отформатировать в том же формате, что и исходная ячейка (если в этих ячейках должны быть данные одних типов.).


Присылайте свои предложения и замечания на msoffi@mail.ru


Компьютерные новости...
Современная электроника...

 

Немного юмора.

 

Нормальные люди не едят за компом, а берут ноутбук на кухню.


- Что такое коммунальная квартира?
- Это когда винт 40 гигов и 4 человека за одним компом.


Одна подруга жалуется другой:
- Мой муж такой ленивый, он даже ведро с мусором не выносит!
- Мне бы твои проблемы! Мой даже корзину в Windows не очищает!!


Беседуют два программиста:
- Слушай, чем иудейская вера от католической отличается?
- Ёптыть! Юзер-мануалы совсем разные!!


Первый нанотехнолог России, Левша, просто неправильно выбрал бизнес-нишу. Подкованные блохи не пользовались спросом.


Раньше я вёл очень активную жизнь: играл в теннис, футбол, бильярд, занимался шахматами, участвовал в автогонках.
Но всё закончилось, когда сдох компьютер.


Электрик печально смотрит на большую кучу пепла у трансформаторной будки и говорит:
- Я же говорил тебе “фаза”, а ты мне “ноль, ноль”!.


Читать другие анекдоты>>





Предлагаю подписаться на рассылки:

 

Бизнес новости. Новости экономики за неделю. Юмор, анекдоты

Наш девиз: Секрет хорошего настроения: сначала читаем новости, потом анекдоты!
Новости, аналитика, обзор рынков, событий, СМИ. Бизнес-новости. Самые важные события за текущую неделю. И анекдоты "на злобу дня".



Деловые предложения о сотрудничестве. Поиск бизнес партнеров

В рассылке публикуются деловые предложения предприятий и предпринимателей России и стран ближнего зарубежья. Деловое сотрудничество, поиск партнеров, представителей, дилеров. Поиск заказчиков и поставщиков. Продажа готового бизнеса. Поиск и предложение инвестиций. Информация о предприятиях и предпринимателях, готовых стать региональными представителями. Эффективные способы привлечения клиентов и увеличения продаж.



На какую рассылку подписаться? Лучшие рассылки Subscribe.ru

Как Вы принимаете решение, столкнувшись с вопросом "На какую рассылку подписаться?" Вам не хватает подсказки и мнения других людей? В наше непростое время, когда количество информации с каждым годом увеличивается со страшной скоростью, мы нуждаемся в своеобразном "фильтре", который позволит нам "отбросить ненужное" и выбрать именно то, что принесет пользу именно Вам. Наша рассылка будет Ваши путеводителем в мире почтовых рассылок сервиса Subscribe.



Лучшие сайты. Обмен ссылками

В этой рассылке Вас будут знакомить с лучшими находками на необъятных просторах интернета! Вы сможете оценить сайты, которые показались нам лучшими, интересными и полезными для нас, и возможно они будут интересны и Вам.



Жду ваши письма и предложения.   msoffi@mail.ru

Игорь.

 


Эффективные рекламные кампании в Интернете.
Рекомендую подписаться! Интересные и полезные рассылки.
Хорошее настроение! Смешные истории. Анекдоты.
Лучшие сайты. Обмен ссылками
Планирование карьеры. Как правильно составить резюме?
Работа в Москве. Рынок вакансий.
Читать книги! Рецензия на книгу.
Умные мысли. Афоризмы и цитаты.
Метафоры в жизни.
Лучшие цитаты и афоризмы о жизни и о бизнесе
Бизнес в условиях кризиса. Бизнес новости.
Маркетинговая стратегия.
Интернет маркетинг. Реклама в интернете
Антикризисное управление.
Современный мир. Глобальные проблемы.
Аренда квартир в Москве.
Обслуживание компьютеров
Раскрутка продвижение сайта.
Эффективные рекламные кампании в Интернете.

В избранное