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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 17.01.2008, 12:05   #1
tat-besidovska
Пользователь
 
Регистрация: 17.01.2008
Сообщений: 29
Вопрос VBA Excel 2003

Помогите чайнику, кто чем может! Проблемка такая:
Существует книга, в ней лист, на листе таблица, состоящая из 5-и столбцов: 1 неделя, 2 неделя...,5 неделя, ячейки которой заполняются данными, ссылаясь на данные других файлов. Можно ли сделать в VBA или просто в Excel так, чтобы данные обновлялись понедельно, т.е 2 неделя обновлялась только на 2 недели месяца начиная со вторника по пятницу и так все остальные недели( т.е весь смысл того, что я написала, состоит в том, чтобы данные которые заносят в другие файлы на будущие недели, в моей таблице появлялись только в реально текущую неделю). Заранее всем спасибо, буду рада любой помощи
tat-besidovska вне форума
Старый 17.01.2008, 12:40   #2
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

VBA-функция "Weekday(Date)" возвращает целое число - день недели (1 - воскресенье и т.д.). В зависимости от значения этой функции обновляйте соответствующий столбец с данными.
Нужно более конкретно?
В Excel это "=ДЕНЬНЕД(СЕГОДНЯ();1)". Но все же обновление данных из неоткрытых книг по условию лучше делать с помощью VBA.
Чем шире угол зрения, тем он тупее.

Последний раз редактировалось SAS888; 17.01.2008 в 12:51. Причина: Добавлено
SAS888 вне форума
Старый 17.01.2008, 12:50   #3
tat-besidovska
Пользователь
 
Регистрация: 17.01.2008
Сообщений: 29
По умолчанию

хотелось бы более подробной информации по-поводу VBA

Последний раз редактировалось tat-besidovska; 17.01.2008 в 12:55.
tat-besidovska вне форума
Старый 17.01.2008, 13:48   #4
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Например, если Вы хотите, чтобы при открытии рабочей книги обновлялся только столбец с данными, соответствующий текущему дню недели, то это реализует следующий код VBA, расположенный в модуле "Эта книга".
Код:
Private Sub Workbook_Open()

    Select Case Weekday(Date)
        Case 2
            'Ваш код обновления столбца "понедельник"
        Case 3
            'Ваш код обновления столбца "вторник"
        Case 4
            'Ваш код обновления столбца "среда"
        Case 5
            'Ваш код обновления столбца "четверг"
        Case 6
            'Ваш код обновления столбца "пятница"
    End Select
    
End Sub
Код обновления соответствующего столбца - это конкретная процедура, откуда брать данные и куда вставлять. Это знаете только Вы.
Чем шире угол зрения, тем он тупее.
SAS888 вне форума
Старый 17.01.2008, 14:18   #5
tat-besidovska
Пользователь
 
Регистрация: 17.01.2008
Сообщений: 29
По умолчанию

Цитата:
Сообщение от SAS888 Посмотреть сообщение
Например, если Вы хотите, чтобы при открытии рабочей книги обновлялся только столбец с данными, соответствующий текущему дню недели, то это реализует следующий код VBA, расположенный в модуле "Эта книга".
Код:
Private Sub Workbook_Open()

    Select Case Weekday(Date)
        Case 2
            'Ваш код обновления столбца "понедельник"
        Case 3
            'Ваш код обновления столбца "вторник"
        Case 4
            'Ваш код обновления столбца "среда"
        Case 5
            'Ваш код обновления столбца "четверг"
        Case 6
            'Ваш код обновления столбца "пятница"
    End Select
    
End Sub
Код обновления соответствующего столбца - это конкретная процедура, откуда брать данные и куда вставлять. Это знаете только Вы.
''''''''''''''''''''''''''''''''''' '''''''''''''''''''''
Дело все в том, что ссылки на другие файлы прописаны не в VBA, а просто в Excel, и обновляются они автоматически при открытии файла. И обновления я хочу в зависимости не только дня недели но и номера недели
tat-besidovska вне форума
Старый 17.01.2008, 14:29   #6
tat-besidovska
Пользователь
 
Регистрация: 17.01.2008
Сообщений: 29
По умолчанию

По-поводу всего выше изложенного:

Файл с входными данными состоит: книга, в ней листы: Неделя1, Неделя2...., Неделя5(итого 5 листов)
пользователь в лист1(Неделя1)в определенную ячейку ставит число(в %- процент выполнения плана, предположим), это значение попадает в мою таблицу в столбец 1(Неделя1)в ячейку предп.A1(попадает с помощью ссылки в Excel)и так далее понедельно. Вот и хотелось бы ,чтоб в моей таблице эти обновления ссылок происходили именно в текущую неделю, а не тогда ,когда пользователи забили данные, предположим они заполнили все 5 листов(все 5 недель), а сегодня только 3 неделя месяца, так вот чтобы в моей таблице обновились только 3 недели.
Вот такие пироги, заранее благодарю за любую помощь
tat-besidovska вне форума
Старый 17.01.2008, 14:29   #7
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Напишите точно, чего Вы хотите. (номер недели в месяце? в году?) ?
Чем шире угол зрения, тем он тупее.
SAS888 вне форума
Старый 17.01.2008, 14:32   #8
tat-besidovska
Пользователь
 
Регистрация: 17.01.2008
Сообщений: 29
По умолчанию

В зависимости от номера недели в месяце обновление столбца
tat-besidovska вне форума
Старый 17.01.2008, 14:43   #9
tat-besidovska
Пользователь
 
Регистрация: 17.01.2008
Сообщений: 29
По умолчанию

вот еще пришло в голову: а можно сделать так,чтобы в текущую неделю неделю был активен только столбец соответствующий этой неделе( тек.неделя 3 => работает столбец 3 и обновляется информация только в нем
""""""""""""""""""""""""""""""""""" """"""
tat-besidovska вне форума
Старый 17.01.2008, 15:10   #10
tat-besidovska
Пользователь
 
Регистрация: 17.01.2008
Сообщений: 29
По умолчанию

Цитата:
Сообщение от tat-besidovska Посмотреть сообщение
вот еще пришло в голову: а можно сделать так,чтобы в текущую неделю неделю был активен только столбец соответствующий этой неделе( тек.неделя 3 => работает столбец 3 и обновляется информация только в нем
""""""""""""""""""""""""""""""""""" """"""
Это был вопрос
tat-besidovska вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
VBA Excel 2003 tat-besidovska Microsoft Office Excel 17 07.06.2008 15:48
2003 & 2007 Sk!f Microsoft Office Word 2 30.04.2008 13:55
Не работает Excel-евский файл в 2003 версии asale Microsoft Office Excel 1 03.10.2007 22:42
MS Excel и MS Outlook (2003) отсылка писем IceB Microsoft Office Excel 1 02.07.2007 13:32