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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.08.2011, 14:37   #11
alex77755
Форумчанин
 
Аватар для alex77755
 
Регистрация: 14.02.2009
Сообщений: 753
По умолчанию

Цитата:
а при установки защиты ячеек на скрытие формул, перестает работать группировка
Это осуждалось здесь и есть решение. Типа
Код:
Sub Поставить()
Dim NL
Dim ND
NL = 3
Application.ScreenUpdating = False
Dim Q
For Each Q In ActiveWorkbook.Sheets
'Debug.Print Q.CodeName
Select Case Q.CodeName
Case "Лист4", "Лист5", "Лист6", "Лист7", "Лист8", "Лист9", "Лист10"
NL = NL + 1
ND = ("Диапазон" & NL)
    With Q
       .Unprotect Password:=MyPassword
 '      .Protection.AllowEditRanges(1).Delete
'       .Protection.AllowEditRanges.Add Title:=ND, Range:=Range _
        ("E18:O67")
        .EnableOutlining = True
        .Protect Password:=MyPassword, Contents:=True, Scenarios:=True, UserInterfaceOnly:=True
    End With

Case "Лист3"
     With Q
        .Unprotect Password:=MyPassword
'        .Protection.AllowEditRanges(1).Delete
'        .Protection.AllowEditRanges.Add Title:="Диапазон3", Range:=Range _
'        ("C6:D55,F6:G55,I6:J55,L6:M55,O6:P55,R6:S55,U6:V55")
        .EnableOutlining = True
        .Protect Password:=MyPassword, DrawingObjects:=True, Contents:=True, Scenarios:=True, UserInterfaceOnly:=True
    End With
    
Case "Лист11"
     With Q
        .Unprotect Password:=MyPassword
        .EnableOutlining = True
        .Protect Password:=MyPassword, DrawingObjects:=True, Contents:=True, Scenarios:=True, UserInterfaceOnly:=True
    End With
    
End Select
Next
Application.ScreenUpdating = True
End Sub
помогу решить контрольные VB6, VBA (недорого)
Alex77755@mail.ru
alex77755 вне форума Ответить с цитированием
Старый 12.08.2011, 14:40   #12
alex77755
Форумчанин
 
Аватар для alex77755
 
Регистрация: 14.02.2009
Сообщений: 753
По умолчанию

На третьем листе у меня сохранялась группировка
помогу решить контрольные VB6, VBA (недорого)
Alex77755@mail.ru
alex77755 вне форума Ответить с цитированием
Старый 12.08.2011, 23:01   #13
gris-81
 
Регистрация: 11.08.2011
Сообщений: 8
По умолчанию

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

еще раз спасибо всем форумчанам!!!
gris-81 вне форума Ответить с цитированием
Старый 12.08.2011, 23:25   #14
lyb4eg
Пользователь
 
Регистрация: 06.08.2011
Сообщений: 76
По умолчанию

Покажите файл с примером, какая именно группировка нужна? Если это 7 офис, то попробуйте поиграться с "разрешить изменение диапазонов". Если будет пример, попробую показать по шагам...
lyb4eg вне форума Ответить с цитированием
Старый 13.08.2011, 18:31   #15
gris-81
 
Регистрация: 11.08.2011
Сообщений: 8
По умолчанию

Цитата:
Покажите файл с примером, какая именно группировка нужна? Если это 7 офис, то попробуйте поиграться с "разрешить изменение диапазонов". Если будет пример, попробую показать по шагам...
lyb4eg, день добрый. ок!
в приложении два примера: 1."группировка_защита". содержит формулы и группировки строк. На него я поставил защиту (включив все галочки, разрешающие изменения в защищенном файле.Только я это все делал с домашнего ноутбука, там стоит 2003 офис.С рабочего компьютера проделывал туже операцию, там стоит 7 офис - поставил галочки, разрешающие все изменения в защищенном файле) И вот: формулы не видны, но группировка перестала работать (т.к. защищенный лист)
Во-втором файле "пример группировки и защиты": прописал макросы, позволяющие скрывать формулы и работать группировке, а так же автоматический запуск МАКРОСА, при открывании файла. НО, что бы все работало, естественно читать МАКРОС (при открытии файла) нужно разрешить. Юзерами файла будут около 100 обывателей с разных компьютеров, с разными офисами и возможно сильными (по умолчанию) уровнями безопасности на МАКРОСЫ. Они не смогут догадаться где ослабить защиту на МАКРОСЫ, что бы все заработало.
Вот и пытаюсь отыскать верное решение, чтобы хоть кто мог открыть файл, не видел формулы, но была возможна группировка строк))
P.S. пароль на втором файле: 1223334444

еще раз, огромное спасибо всем, кто принимает участие в этой задачке!!!
Вложения
Тип файла: rar grouping.rar (8.8 Кб, 9 просмотров)

Последний раз редактировалось gris-81; 13.08.2011 в 18:39.
gris-81 вне форума Ответить с цитированием
Старый 13.08.2011, 22:24   #16
alex77755
Форумчанин
 
Аватар для alex77755
 
Регистрация: 14.02.2009
Сообщений: 753
По умолчанию

Цитата:
Они не смогут догадаться где ослабить защиту на МАКРОСЫ, что бы все заработало
Сейчас не могу вспомнить где попадалось, но сам был очень удивлён такому подходу. Есть какой-то хитрый запуск и всё обходится. Вот только не могу вспомнить куда скинул пример...
помогу решить контрольные VB6, VBA (недорого)
Alex77755@mail.ru
alex77755 вне форума Ответить с цитированием
Старый 13.08.2011, 22:42   #17
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Макросы работают, если запускать с помощью скрипта vbs, например такого:
Код:
Option Explicit
Dim objFSO, objExcel, ExcelPath, wb

Set objFSO = CreateObject("Scripting.FileSystemObject") 
ExcelPath = objFSO.GetParentFolderName(WScript.ScriptFullName) 
Set objExcel = CreateObject("Excel.Application")
Set wb = objExcel.Workbooks.Open (ExcelPath & "\CompareFiles.Find.xls")
objExcel.Visible = True
Set objExcel = Nothing
В этом экземпляре экселя в этом файле макросы будут работать.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 13.08.2011, 23:14   #18
gris-81
 
Регистрация: 11.08.2011
Сообщений: 8
По умолчанию

Hugo121, простите за мою не профессиональность, я совсем не программист ("я только учусь"))
код vbs куда именно прописать в моем примере?

заранее спасибо!!!

Последний раз редактировалось gris-81; 13.08.2011 в 23:23.
gris-81 вне форума Ответить с цитированием
Старый 15.08.2011, 18:11   #19
gris-81
 
Регистрация: 11.08.2011
Сообщений: 8
По умолчанию

Подскажите пожалуйста куда прописывать код скрипта vbs?
(если есть пример по-шагово, было бы очень круто)
где коды макросов знаю прописывать, а скрипт vbs нет....

пожалуйста скиньте пример))
Спасибо!!!
gris-81 вне форума Ответить с цитированием
Старый 15.08.2011, 18:22   #20
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

В блокнот, например. И сохраните с расширением .vbs.
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
какую функцию excel использовать? Railana Microsoft Office Excel 2 01.02.2010 11:28
Какую логическую функцию лучше всего использовать? Slavik Microsoft Office Excel 12 01.04.2009 15:49
Подскажите пожалуйста какую функцию необходимо использовать... Андрю)(@ Паскаль, Turbo Pascal, PascalABC.NET 1 10.12.2008 00:03
Подскажите пожалуйста какую функцию необходимо использовать... Андрю)(@ Помощь студентам 1 09.12.2008 23:53
Какую API функцию следует использовать чтобы найти Handle бутона SeRhy Общие вопросы Delphi 4 21.10.2008 23:43