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

Вход

Регистрация

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

 

= Мир MS Excel/Макрос только для одной книги - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Макрос только для одной книги
A_3485 Дата: Пятница, 28.09.2012, 12:13 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 146
Репутация: 0 ±
Замечаний: 40% ±

2007
Добрый день!

Помогите пожалуйста решить такую задачу. У меня есть файл - spisok, в нем записаны макросы. Если открыть другую книгу ecxel, то макросы с книги spisok работают и для дргугих книг excel. Как можно сделать так, чтобы мои макросы работали только для книги spisok.
К сообщению приложен файл: spisok.xls (87.5 Kb)
 
Ответить
СообщениеДобрый день!

Помогите пожалуйста решить такую задачу. У меня есть файл - spisok, в нем записаны макросы. Если открыть другую книгу ecxel, то макросы с книги spisok работают и для дргугих книг excel. Как можно сделать так, чтобы мои макросы работали только для книги spisok.

Автор - A_3485
Дата добавления - 28.09.2012 в 12:13
vikttur Дата: Пятница, 28.09.2012, 12:24 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2941
Репутация: 526 ±
Замечаний: 0% ±

Пароль предлагаете ломать?
 
Ответить
СообщениеПароль предлагаете ломать?

Автор - vikttur
Дата добавления - 28.09.2012 в 12:24
A_3485 Дата: Пятница, 28.09.2012, 12:31 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 146
Репутация: 0 ±
Замечаний: 40% ±

2007
Ой. Прошу прощения...
К сообщению приложен файл: 4447805.xls (87.5 Kb)
 
Ответить
СообщениеОй. Прошу прощения...

Автор - A_3485
Дата добавления - 28.09.2012 в 12:31
A_3485 Дата: Пятница, 28.09.2012, 14:58 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 146
Репутация: 0 ±
Замечаний: 40% ±

2007
Чтобы отключить вторую книгу досточтно вставить

[vba]
Code
Sub CellEnterFinish(keycode As String)
     On Error Resume Next
     Dim shift As Boolean
      
     shift = Left(keycode, 1) = "s" ' для поддержки заглавных букв в таких полях, как email, skype и т.п.
     If shift Then keycode = Mid(keycode, 2)
     strkey = CaseRanges(ChangeLang(Chr(keycode)))
     If shift Then strkey = UCase(strkey)
If ThisWorkbook.Name <> ActiveWorkbook.Name Then Exit Sub
[/vba]
но при этом в новой книге работать все равно нельзя, т.к ячейка становиться не активной для написания.


Сообщение отредактировал A_3485 - Пятница, 28.09.2012, 15:45
 
Ответить
СообщениеЧтобы отключить вторую книгу досточтно вставить

[vba]
Code
Sub CellEnterFinish(keycode As String)
     On Error Resume Next
     Dim shift As Boolean
      
     shift = Left(keycode, 1) = "s" ' для поддержки заглавных букв в таких полях, как email, skype и т.п.
     If shift Then keycode = Mid(keycode, 2)
     strkey = CaseRanges(ChangeLang(Chr(keycode)))
     If shift Then strkey = UCase(strkey)
If ThisWorkbook.Name <> ActiveWorkbook.Name Then Exit Sub
[/vba]
но при этом в новой книге работать все равно нельзя, т.к ячейка становиться не активной для написания.

Автор - A_3485
Дата добавления - 28.09.2012 в 14:58
Саня Дата: Пятница, 28.09.2012, 15:53 | Сообщение № 5
Группа: Друзья
Ранг: Ветеран
Сообщений: 1068
Репутация: 560 ±
Замечаний: 0% ±

XL 2016
модуль "ЭтаКнига":
[vba]
Code
Private Sub Workbook_Open()
     Hook
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
     Unhook
End Sub

Private Sub Workbook_Activate()
     Hook
End Sub
Private Sub Workbook_Deactivate()
     Unhook
End Sub

'------------------------------------------------------
Sub Hook()
     On Error Resume Next
     HookKeys HOOKED_KEYS, "CellEnterFinish"
     Application.OnKey "{BACKSPACE}", "RemovePrev"
     Application.OnKey "{ENTER}", "GoToNextField"
     Application.OnKey "~", "GoToNextField"
     Application.OnKey "{TAB}"
End Sub

Sub Unhook()
     UnHookKeys HOOKED_KEYS
     Application.OnKey "{BACKSPACE}"
     Application.OnKey "{ENTER}"
     Application.OnKey "~"
End Sub
[/vba]
К сообщению приложен файл: 1816434.xls (87.0 Kb)
 
Ответить
Сообщениемодуль "ЭтаКнига":
[vba]
Code
Private Sub Workbook_Open()
     Hook
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
     Unhook
End Sub

Private Sub Workbook_Activate()
     Hook
End Sub
Private Sub Workbook_Deactivate()
     Unhook
End Sub

'------------------------------------------------------
Sub Hook()
     On Error Resume Next
     HookKeys HOOKED_KEYS, "CellEnterFinish"
     Application.OnKey "{BACKSPACE}", "RemovePrev"
     Application.OnKey "{ENTER}", "GoToNextField"
     Application.OnKey "~", "GoToNextField"
     Application.OnKey "{TAB}"
End Sub

Sub Unhook()
     UnHookKeys HOOKED_KEYS
     Application.OnKey "{BACKSPACE}"
     Application.OnKey "{ENTER}"
     Application.OnKey "~"
End Sub
[/vba]

Автор - Саня
Дата добавления - 28.09.2012 в 15:53
  • Страница 1 из 1
  • 1
Поиск:

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