Страницы: 1 2 След.
RSS
Как закрепить checkbox
 
Люди добрые может кто поможет есть проблема  
Описание в Файле
 
сейчас подредоктирую
 
Вроде так
 
Если честно я не очень понял я просто более подробно описал в файле свою проблему.  
А вобще огромное спасибо по двум ответам вроде как почти мой вопрос решился вот тока с 4 вопросом засада.
 
Ну это я как бы условно поставил Тоесть если я узнаю количество галочек я их перемножу на суммы и узнаю сумму всех работ скажем за день а теперь их надо занести в другую таблицу только автоматически
 
Я вроде как понял, скажем сумму я узнал    
за день и если я ее пропишу в указаном макросе и поставлю число  
да оно появиться в таблице но мне нужно так,сумму которая получиться я не знаю и число скажем тоже, я просто в таблице ставлю галочки сумма итоговая за день считаеться сама и заноситься автоматом во вторую таблицу где выскакивает чисо занесения этой суммы а после закрытия документа скажем в Понедельник открыв его во Вторник сымма Вторника должна занестись в следущую ячейку
 
Не обижайтесь что не так я просто нормально объяснить не могу  
Я понял что в макрос вставляю Сумму но седущая строчка время и дата я ведь ее не знаю?
 
Огромное человеческое спасибо я все понял Мир не без хороших людей.  
А насчет моей работы я обязательно поделюсь своими телодвижениями просто сегодня нет времени но на днях покажу
 
Я с вами полностью согласен учиться не когда не поздно и не вредно.  
Все то,что я у вас спрашиваю это только часть задуманой идеи остальное я пытаюсь постич сам,и если вы не против я задам еще несколько вопросов?  
Дмитрий а как вы в ваш макрос связали с ячейкой А29 который заполняет дату, почему он начинаеться именно с этой ячейки.
 
Попробовал применить ваш макрос но число почемуто выходит после таблицы
 
Так вот и я про что я и не хотел чтобы все так просто я хотел понять сам смысл чтобы потом его в другой документ вставить, вобще этот документ тоже урезаный оригинал просто весит много, может и опять пременив макрос далее нечего не получиться?
 
Тоесть если я правильно понял меняя    
If lLastRow <= 59 Then lLastRow = 60  
я могу назначить и другую строку по номеру?  
А как дело обстоит с выбором столбца скажем если понадобиться не А а скажем Вили С?
 
Дмитрий еще есть вопрос а этот макрос можно привязать к текущей дате т.е. сейчас так закрыл документ, открыл прописалась сумма и число и так после каждого открытия но вопрос в том надо чтобы перепрыгивало на другую ячейку не каждый раз а согластно дате т.к.документ можно открывать сто раз в день,а перепрыгнуть должно толко тогда когда скажем его открыли на другой день а таблица эта игогов за день,чтобы узнать сколько заработано за месяц.
 
Попробовал но чтото он не работает?
 
Дмитрий очень интересный факт в 2003 офисе код не работает  
а 2010 он также продолжает добовлять дату после открытия каждый раз
 
Дмитрий подскажи пожалуйста столкнулся с такой проблемой.  
когда в части документа ячейки сняты от защиты и над ними выполняеться макрос а весь лист защищен паролем,то макрос не работает.  
Как нибудь это можно поправить или это к каждому макросу в отдельности применимо.
 
Дмитрий добрый день воспользовался вашим советом  
попробовал вот этот код    
 
Sub Protect_for_User_Non_for_VBA()  
     ActiveSheet.Protect Password:="123", UserInterfaceOnly:=True  
End Sub  
но темнемение макросы что выполняються в документе выдают ошибку, в документе применены следущие макросы  
 
Private Sub Worksheet_SelectionChange(ByVal Target As Range)  
   If Target.Cells.Count > 1 Then Exit Sub  
       If Not Intersect(Target, Range("B5:B46,C5:C46,D5:D46,E5:E46,F5:F46,G5:G46,H5:H46,I5:I46,J5:J46,K5:K46,L5:L46,M5:M46,N5:N46,O5:O46,P5:P46,Q5:Q46,R5:R46,S5:S46,T5:T46,U5:U46")) Is Nothing Then  
           Target.Font.Name = "Marlett"  
           If Target = vbNullString Then  
               Target = "a"  
         End If  
End If  
End Sub  
 
Private Sub Worksheet_Change(ByVal Target As Range)  
   If Target.Cells.Count > 1 Then Exit Sub  
       If Not Intersect(Target, Range("A56:A86")) Is Nothing Then  
           With Target(1, 2)  
               .Value = Now  
               .EntireColumn.AutoFit  
           End With  
       End If  
End Sub  
 
может что не так делаю
 
Защиту ставил руками Если не трудно гляньте
 
Поменял на 2003 Офис
 
Во лох "это я про себя"  
Век живи век учись огромное спасибо  
 
Дмитрий подскажите а как нить можно на основе макроса  
скажем лист 1 (Январь) скопировать на остольные листы они у меня по месяцам идут  
чтобы не вводить по новой все макросы т.к.они у меня на всех листах одинаковые
 
Ну про модуль "Эта книга" вы уж слишком!!!!!!!!!  
Благодаря вам я уже начал чейто понимать  
Хоть и не все, но Москва тоже не сразу строилась.  
Еще раз огромное спасибо.
 
Дмитрий получаеться этот макрос на защиту листа  
приходиться запускать каждый раз после  
открытия листа  
а можно ли чтобы он автоматом работал один раз "выполнил" и все.
 
нет защиту я ставил непосредственно на лист  
и при открытии документа мне приходиться заново запускать макрос  
я так понимаю вы предлогаете поставить на всю книгу?  
но в этой книге у меня есть еще и другие доки поэтому хотелось бы на лист только.
 
Вот пример
 
Сергей, параметр UserInterfaceOnly:=True при установке защиты не сохраняется вместе с книгой, процедуру защиты с эти параметром можно автоматически запускать, например, при загрузке книги.    
 
Возможны варианты:  
 
Вариант 1. Переименуйте Protect_for_User_Non_for_VBA в Auto_Open и переместите её в Module1  
 
Вариант2. Переименуйте Protect_for_User_Non_for_VBA в Workbook_Open и переместите её в модуль ЭтаКнига
 
Двойной клик все же предсказуемее, чем просто позиционирование курсора.  
Кроме того, логично мышкой же и снимать флажки, если они случайгно установились не там, где нужно.  
Поэтому для установки/снятия флажков вместо процедуры Worksheet_SelectionChange я бы использовал событие двойного клика с таким кодом:  
 
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)  
 If Target.Cells.Count > 1 Then Exit Sub  
 If Intersect(Target, Range("B5:B46,C5:C46,D5:D46,E5:E46,F5:F46,G5:G46,H5:H46,I5:I46,J5:J46,K5:K46,L5:L46,M5:M46,N5:N46,O5:O46,P5:P46,Q5:Q46,R5:R46,S5:S46,T5:T46,U5:U46")) Is Nothing Then Exit Sub  
 Target.Font.Name = "Marlett"  
 If Target = vbNullString Then  
   Target = "a"  
 Else  
   Target = Empty  
 End If  
 Cancel = True  
End Sub
 
Понимаеш данная вещь пишеться для женского колектива в котором компъютером, называют монитор.  
Поэтому с двойным кликом нельзя а то они такого накликают.
 
Огромное спасибо я сделал так все ок работает  
Sub Auto_Open    
Dim wsSh as worksheet  
For each wsSh in thisWorkbook.Sheets  
wsSh.Protect Password:="1111", UserInterfaceOnly:=True  
next wsSh  
End Sub
 
Единственное было бы неплохо чтобы в этом коде    
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)  
If Target.Cells.Count > 1 Then Exit Sub  
If Intersect(Target, Range("B5:B46,C5:C46,D5:D46,E5:E46,F5:F46,G5:G46,H5:H46,I5:I46,J5:J46,K5:K46,L5:L46,M5:M46,N5:N46,O5:O46,P5:P46,Q5:Q46,R5:R46,S5:S46,T5:T46,U5:U46")) Is Nothing Then Exit Sub  
Target.Font.Name = "Marlett"  
If Target = vbNullString Then  
Target = "a"  
Else  
Target = Empty  
End If  
Cancel = True  
End Sub  
как то сделать чтобы флажок ставился двойным кликом и снимался кнопкой Delete
 
{quote}{login=serge2serge}{date=15.04.2011 11:25}{thema=}{post}Единственное было бы неплохо чтобы в этом коде    
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)  
If Target.Cells.Count > 1 Then Exit Sub  
If Intersect(Target, Range("B5:B46,C5:C46,D5:D46,E5:E46,F5:F46,G5:G46,H5:H46,I5:I46,J5:J46,K5:K46,L5:L46,M5:M46,N5:N46,O5:O46,P5:P46,Q5:Q46,R5:R46,S5:S46,T5:T46,U5:U46")) Is Nothing Then Exit Sub  
Target.Font.Name = "Marlett"  
If Target = vbNullString Then  
Target = "a"  
Else  
Target = Empty  
End If  
Cancel = True  
End Sub  
как то сделать чтобы флажок ставился двойным кликом и снимался кнопкой Delete{/post}{/quote}  
Для этого нужно закомментировать строку: Target = Empty
Страницы: 1 2 След.
Читают тему
Наверх