Сообщение при открытии файла excel

Обновлено: 05.07.2024

Доброго времени суток коллеги!
Прошу подсказать как реализовать такую задачу:
есть файл который постоянно модернизируется по функционалу, этот файл используют много людей с разных компьютеров.
Необходимо создать окно уведомлений которое бы могло появляться раз у каждого пользователя при входе в файл со своего ПК и каждый раз после изменения текста в этом окне он каждый раз появлялся у каждого входящего в этот файлик и давал возможность ознакомится с изменениями. Но надо что бы он один раз появлялся после внесения изменений в текстовку этого файла (это окно с уведомлением)

Доброго времени суток коллеги!
Прошу подсказать как реализовать такую задачу:
есть файл который постоянно модернизируется по функционалу, этот файл используют много людей с разных компьютеров.
Необходимо создать окно уведомлений которое бы могло появляться раз у каждого пользователя при входе в файл со своего ПК и каждый раз после изменения текста в этом окне он каждый раз появлялся у каждого входящего в этот файлик и давал возможность ознакомится с изменениями. Но надо что бы он один раз появлялся после внесения изменений в текстовку этого файла (это окно с уведомлением) Gameower


хорошо а как реализовать это? через какую функцию ? Автор - Gameower
Дата добавления - 01.11.2016 в 12:41

если закрыть окно или нажать отмену, следующий открывший файл увидит такое же окно, если изменить текст и нажать ок, следующий увидит этот текст

вместо inputbox, для больших текстов правильнее форму с кнопками сделать.

если закрыть окно или нажать отмену, следующий открывший файл увидит такое же окно, если изменить текст и нажать ок, следующий увидит этот текст

вместо inputbox, для больших текстов правильнее форму с кнопками сделать. K-SerJC

Благими намерениями выстелена дорога в АД.

если закрыть окно или нажать отмену, следующий открывший файл увидит такое же окно, если изменить текст и нажать ок, следующий увидит этот текст

вместо inputbox, для больших текстов правильнее форму с кнопками сделать. Автор - K-SerJC
Дата добавления - 01.11.2016 в 12:56

K-SerJC, хороший вариант, один момент, нужно что бы это окно выпадало один раз после обновления в нем написанного у каждого нового посетителя файла, и повторное появление будет только после обновления содержимого в этом окне, это возможно простыми командами сделать? и желательно нижнюю строку где можно писать ее убрать совсем окно несет информативный характер только

K-SerJC, хороший вариант, один момент, нужно что бы это окно выпадало один раз после обновления в нем написанного у каждого нового посетителя файла, и повторное появление будет только после обновления содержимого в этом окне, это возможно простыми командами сделать? и желательно нижнюю строку где можно писать ее убрать совсем окно несет информативный характер только Gameower

K-SerJC, хороший вариант, один момент, нужно что бы это окно выпадало один раз после обновления в нем написанного у каждого нового посетителя файла, и повторное появление будет только после обновления содержимого в этом окне, это возможно простыми командами сделать?

K-SerJC, хороший вариант, один момент, нужно что бы это окно выпадало один раз после обновления в нем написанного у каждого нового посетителя файла, и повторное появление будет только после обновления содержимого в этом окне, это возможно простыми командами сделать?

K-SerJC, хороший вариант, один момент, нужно что бы это окно выпадало один раз после обновления в нем написанного у каждого нового посетителя файла, и повторное появление будет только после обновления содержимого в этом окне, это возможно простыми командами сделать?

K-SerJC, а вы могли бы дать пример как это сделать? и приписать коменты куда вставить пользователей и т.д.

K-SerJC, а вы могли бы дать пример как это сделать? и приписать коменты куда вставить пользователей и т.д. Gameower

K-SerJC, а вы могли бы дать пример как это сделать? и приписать коменты куда вставить пользователей и т.д.

если не очень срочно сделаю, надо время подумать, а тут еще работой пригрузили :-))

K-SerJC, а вы могли бы дать пример как это сделать? и приписать коменты куда вставить пользователей и т.д.

если не очень срочно сделаю, надо время подумать, а тут еще работой пригрузили :-))

K-SerJC, а вы могли бы дать пример как это сделать? и приписать коменты куда вставить пользователей и т.д.

если не очень срочно сделаю, надо время подумать, а тут еще работой пригрузили :-))


прикольно, мысль была похожая, только через username
у нас по сети можно с разных компов под своей учеткой заходить


прикольно, мысль была похожая, только через username
у нас по сети можно с разных компов под своей учеткой заходить K-SerJC


прикольно, мысль была похожая, только через username
у нас по сети можно с разных компов под своей учеткой заходить Автор - K-SerJC
Дата добавления - 01.11.2016 в 14:10

Так вместо Серийника возьмите за основу что вам надо и все. Там в первых строках кода переменная S. В нее и возьмите юзернэйм ))) Удачи

Так вместо Серийника возьмите за основу что вам надо и все. Там в первых строках кода переменная S. В нее и возьмите юзернэйм ))) Удачи devilkurs

если не очень срочно сделаю, надо время подумать, а тут еще работой пригрузили :-))


вообще есть список юзеров которые будут часто использовать, но есть и новые пользователе которые могут заходить. возможно ли через название ПК в сети это сделать??

если не очень срочно сделаю, надо время подумать, а тут еще работой пригрузили :-))


вообще есть список юзеров которые будут часто использовать, но есть и новые пользователе которые могут заходить. возможно ли через название ПК в сети это сделать?? Gameower

если не очень срочно сделаю, надо время подумать, а тут еще работой пригрузили :-))


вообще есть список юзеров которые будут часто использовать, но есть и новые пользователе которые могут заходить. возможно ли через название ПК в сети это сделать?? Автор - Gameower
Дата добавления - 02.11.2016 в 04:28


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


момнет такой, необходимо не ту инфо выводить,а другую ту которую я бы мог сам вписывать типа версия файла такая то и внес по функционалу такие то изменения и т.д. Gameower


момнет такой, необходимо не ту инфо выводить,а другую ту которую я бы мог сам вписывать типа версия файла такая то и внес по функционалу такие то изменения и т.д. Автор - Gameower
Дата добавления - 02.11.2016 в 04:43

вообще есть список юзеров которые будут часто использовать, но есть и новые пользователе которые могут заходить. возможно ли через название ПК в сети это сделать??

вообще есть список юзеров которые будут часто использовать, но есть и новые пользователе которые могут заходить. возможно ли через название ПК в сети это сделать??

вообще есть список юзеров которые будут часто использовать, но есть и новые пользователе которые могут заходить. возможно ли через название ПК в сети это сделать??

много вариантов. :-) Автор - K-SerJC
Дата добавления - 02.11.2016 в 07:37

Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.Save
End Sub

Private Sub Workbook_Open()
If ActiveWorkbook.Sheets("secr").Visible <> 0 Then ActiveWorkbook.Sheets("secr").Visible = 0
Message (CreateObject("Scripting.FileSystemObject").GetDrive("C").SerialNumber)
End Sub

Private Sub Message(snDrive As String)
Dim pUz As Integer, txt As String
If ActiveWorkbook.Sheets("secr").Cells(3, 1).Value = "" Then AddDrive (snDrive): Moder: Exit Sub
If snDrive = ActiveWorkbook.Sheets("secr").Cells(3, 1).Value Then Moder: Exit Sub
pUz = FindUz(snDrive)
If pUz = 0 Then AddDrive (snDrive): Uzver: Exit Sub
txt = ActiveWorkbook.Sheets("secr").Cells(1, 1).Value
If ActiveWorkbook.Sheets("secr").Cells(pUz, 2).Value = txt Then Exit Sub Else: UpdateDriveRec pUz, txt: Uzver
End Sub
Private Sub Moder()
frmMessage.Hide
frmMessage.TextBox1.Enabled = False
frmMessage.cmbOK.Caption = "Отредактировал!"
frmMessage.Label1.Visible = False
frmMessage.Show
End Sub
Private Sub Uzver()
frmMessage.Hide
frmMessage.TextBox1.Enabled = False
frmMessage.cmbOK.Caption = "Прочитал!"
frmMessage.Label1.Visible = True
frmMessage.Show
End Sub

Private Sub AddDrive(snDrive As String)
Dim t As Integer
t = ActiveWorkbook.Sheets("secr").Cells(2, 2).Value
ActiveWorkbook.Sheets("secr").Cells(t, 1).Value = snDrive
ActiveWorkbook.Sheets("secr").Cells(2, 2).Value = t + 1
End Sub

Private Sub UpdateDriveRec(poz As Integer, txt As String)
ActiveWorkbook.Sheets("secr").Cells(poz, 2).Value = txt
End Sub

Private Function FindUz(snDrive As String) As Integer
Dim st As Integer, sp As Integer, à As Integer
FindUz = 0
st = ActiveWorkbook.Sheets("secr").Cells(2, 1).Value
sp = ActiveWorkbook.Sheets("secr").Cells(2, 2).Value
For f = st To sp
If snDrive = ActiveWorkbook.Sheets("secr").Cells(f, 1).Value Then FindUz = f: Exit Function
Next f
End Function

Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.Save
End Sub

Private Sub Workbook_Open()
If ActiveWorkbook.Sheets("secr").Visible <> 0 Then ActiveWorkbook.Sheets("secr").Visible = 0
Message (CreateObject("Scripting.FileSystemObject").GetDrive("C").SerialNumber)
End Sub

Private Sub Message(snDrive As String)
Dim pUz As Integer, txt As String
If ActiveWorkbook.Sheets("secr").Cells(3, 1).Value = "" Then AddDrive (snDrive): Moder: Exit Sub
If snDrive = ActiveWorkbook.Sheets("secr").Cells(3, 1).Value Then Moder: Exit Sub
pUz = FindUz(snDrive)
If pUz = 0 Then AddDrive (snDrive): Uzver: Exit Sub
txt = ActiveWorkbook.Sheets("secr").Cells(1, 1).Value
If ActiveWorkbook.Sheets("secr").Cells(pUz, 2).Value = txt Then Exit Sub Else: UpdateDriveRec pUz, txt: Uzver
End Sub
Private Sub Moder()
frmMessage.Hide
frmMessage.TextBox1.Enabled = False
frmMessage.cmbOK.Caption = "Отредактировал!"
frmMessage.Label1.Visible = False
frmMessage.Show
End Sub
Private Sub Uzver()
frmMessage.Hide
frmMessage.TextBox1.Enabled = False
frmMessage.cmbOK.Caption = "Прочитал!"
frmMessage.Label1.Visible = True
frmMessage.Show
End Sub

Private Sub AddDrive(snDrive As String)
Dim t As Integer
t = ActiveWorkbook.Sheets("secr").Cells(2, 2).Value
ActiveWorkbook.Sheets("secr").Cells(t, 1).Value = snDrive
ActiveWorkbook.Sheets("secr").Cells(2, 2).Value = t + 1
End Sub

Private Sub UpdateDriveRec(poz As Integer, txt As String)
ActiveWorkbook.Sheets("secr").Cells(poz, 2).Value = txt
End Sub

Private Function FindUz(snDrive As String) As Integer
Dim st As Integer, sp As Integer, à As Integer
FindUz = 0
st = ActiveWorkbook.Sheets("secr").Cells(2, 1).Value
sp = ActiveWorkbook.Sheets("secr").Cells(2, 2).Value
For f = st To sp
If snDrive = ActiveWorkbook.Sheets("secr").Cells(f, 1).Value Then FindUz = f: Exit Function
Next f
End Function

Благими намерениями выстелена дорога в АД.

Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.Save
End Sub

Private Sub Workbook_Open()
If ActiveWorkbook.Sheets("secr").Visible <> 0 Then ActiveWorkbook.Sheets("secr").Visible = 0
Message (CreateObject("Scripting.FileSystemObject").GetDrive("C").SerialNumber)
End Sub

Private Sub Message(snDrive As String)
Dim pUz As Integer, txt As String
If ActiveWorkbook.Sheets("secr").Cells(3, 1).Value = "" Then AddDrive (snDrive): Moder: Exit Sub
If snDrive = ActiveWorkbook.Sheets("secr").Cells(3, 1).Value Then Moder: Exit Sub
pUz = FindUz(snDrive)
If pUz = 0 Then AddDrive (snDrive): Uzver: Exit Sub
txt = ActiveWorkbook.Sheets("secr").Cells(1, 1).Value
If ActiveWorkbook.Sheets("secr").Cells(pUz, 2).Value = txt Then Exit Sub Else: UpdateDriveRec pUz, txt: Uzver
End Sub
Private Sub Moder()
frmMessage.Hide
frmMessage.TextBox1.Enabled = False
frmMessage.cmbOK.Caption = "Отредактировал!"
frmMessage.Label1.Visible = False
frmMessage.Show
End Sub
Private Sub Uzver()
frmMessage.Hide
frmMessage.TextBox1.Enabled = False
frmMessage.cmbOK.Caption = "Прочитал!"
frmMessage.Label1.Visible = True
frmMessage.Show
End Sub

Private Sub AddDrive(snDrive As String)
Dim t As Integer
t = ActiveWorkbook.Sheets("secr").Cells(2, 2).Value
ActiveWorkbook.Sheets("secr").Cells(t, 1).Value = snDrive
ActiveWorkbook.Sheets("secr").Cells(2, 2).Value = t + 1
End Sub

Private Sub UpdateDriveRec(poz As Integer, txt As String)
ActiveWorkbook.Sheets("secr").Cells(poz, 2).Value = txt
End Sub

Private Function FindUz(snDrive As String) As Integer
Dim st As Integer, sp As Integer, à As Integer
FindUz = 0
st = ActiveWorkbook.Sheets("secr").Cells(2, 1).Value
sp = ActiveWorkbook.Sheets("secr").Cells(2, 2).Value
For f = st To sp
If snDrive = ActiveWorkbook.Sheets("secr").Cells(f, 1).Value Then FindUz = f: Exit Function
Next f
End Function

Этот прием позволит Вам выводить на экран окно-заставку при открытии любой заданной книги в Excel.

splash.jpg

Заставка появляется сразу после открытия файла и автоматически исчезает через несколько секунд.

Шаг 1. Создаем экранную форму

Откройте редактор Visual Basic - в старых версиях Excel это можно сделать через меню Сервис - Макрос - Редактор Visual Basic (Tools - Macro - Visual Basic Editor) , а в новых кнопкой Visual Basic на вкладке Разработчик (Developer) и создайте новую форму, используя команду меню Insert - UserForm. Появится пустая серая оконная форма будущей заставки. Добавим на нее изображение при помощи панели инструментов Toolbox (если у вас ее не видно, то зайдите в меню View - Toolbox):

splash2.jpg

Возможно, придется немного изменить размер формы, чтобы изображение уместилось полностью. Чтобы написать на форме текст, можно использовать элемент управления Label с панели Toolbox.

Ну, и наконец, выделив предварительно всю форму, можно задать текст в строке заголовка, используя свойство Caption в панели Properties:

В итоге у вас должно получиться нечто подобное:

splash5.jpg

Шаг 2. Добавляем управляющий код

Щелкните правой кнопкой мыши по форме и выберите View Code. В открывшийся модуль формы добавьте такой код:

Откройте модуль ЭтаКнига в левом верхнем углу (если ее не видно - отобразите соответствующее окно через меню View - Project Explorer) и добавьте в него следующий код:

И, наконец, вставьте обычный модуль (Insert - Module) и скопируйте туда это:

Все. Можно закрывать редактор Visual Basic, сохранять файл и пробовать закрыть-открыть книгу.

Как это работает?

При открытии книги Excel выполняет процедуру Workbook_Open из модуля ЭтаКнига. Эта процедура отображает на экране нашу форму-заставку. При отображении формы запускается процедура UserForm_Activate, которая с задержкой в 5 секунд запускает макрос KillTheForm, который убирает форму с экрана.

Удивительный! Использование эффективных вкладок в Excel, таких как Chrome, Firefox и Safari!
Экономьте 50% своего времени и сокращайте тысячи щелчков мышью каждый день!

1. Держать Alt + F11 клавиши одновременно, чтобы открыть Microsoft Visual Basic для приложений окно.

2. В Microsoft Visual Basic для приложений окно, дважды щелкните Эта рабочая тетрадь из Проект-VBAProject панели, затем скопируйте и вставьте приведенный ниже код VBA в Модули окно, см. снимок экрана:

Внимание: Если Проект-VBAProject панель скрыта, щелкните Вид > Обозреватель проекта для его отображения.

3. Затем закройте окно кода и сохраните эту книгу как Excel Macro-Enabled Workbook формат, пожалуйста, нажмите Файл > Сохранить какИ в Сохранить как окно, выберите Excel Macro-Enabled Workbook из Сохранить как список, см. снимок экрана:

4. Теперь при первом открытии этого файла вверху таблицы отображается предупреждение системы безопасности, щелкните Включить контент кнопку для активации кода VBA, см. снимок экрана:

Ноты:

Автоматически открывать определенные книги при следующем запуске Excel

После установки Kutools for Excel, выполните следующие действия:

1. Открывайте книги, которые вы хотите открыть вместе в следующий раз автоматически.

2. Затем нажмите Предприятие > Workbook > Автоматически открывать эту книгу в следующий раз, см. снимок экрана:

3. В Автоматически открывать эту книгу в следующий раз диалоговое окно, щелкните Выбрать все чтобы проверить все книги, которые вы хотите автоматически открывать в следующий раз при запуске файла Excel, затем нажмите Ok для выхода из диалога см. снимок экрана:

4. И теперь, когда вы запускаете файл Excel, все выбранные вами книги открываются одновременно.

Внимание: Чтобы отменить эту операцию, вам просто нужно отменить выбор всех книг или удалить или очистить книги в Автоматически открывать эту книгу в следующий раз диалоговое окно.

Репутация: нет
Всего: нет

Репутация: 13
Всего: 23

Цитата(Rustamb @ 30.12.2009, 12:18 )
Сейчас пишу базу данных

“. Брали корову рыжую одну, отдавать будем корову рыжую одну, чтобы не нарушать отчетности”
Эдуард Успенский, “Каникулы в Простоквашино”

Репутация: нет
Всего: нет

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль "Помогите!" таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • Оставляйте свои записи в "Книге отзывов о работе администрации"
  • А вот тут лежит FAQ нашего подраздела

Если Вам понравилась атмосфера форума, заходите к нам чаще!
С уважением mihanik и staruha.

[ Время генерации скрипта: 0.1258 ] [ Использовано запросов: 21 ] [ GZIP включён ]

Читайте также: