Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 3 4 5 6 След.
Как исключить из области видимости цикла скрытые строки
 
*работы  
*таблицы
Как исключить из области видимости цикла скрытые строки
 
Результат с копированием вышел неплохой, но если значений в выборке больше 10-ти ждать все равно приходиться долго.... на обработку каждой строки много действий. Полей в строке около 20-ти и работа выполняется с 7-10 полями "ячейками". Данные отсылаются на разные листы.  
Можете дать пример таботы с двумерными массивами, и способами адресации в них?  
У меня таблици построены как "реляционная БД"  
 
Я в макросах новичок, но на с++ пишу, если можно проведите аналогию кто знаком с языком.
Как исключить из области видимости цикла скрытые строки
 
Цикол нужен в любом случе, так как нужно отдельно обрабатывать содержымое каждой строки, но это вариант, создать новый листи с выбранными значения и на нем уже обрабатывать , так будет существенно быстрее.  
 
Спасибо большое, буду пробовать!
Как исключить из области видимости цикла скрытые строки
 
Строки скрываю автофильтром.
Как исключить из области видимости цикла скрытые строки
 
Здравствуйте УВ. Форумчане!  
Подскажите, как можно изключить из цикла такого вида работу со скрытыми строками  
 
       LastRow = ActiveSheet.UsedRange.Row - 1 + ActiveSheet.UsedRange.Rows.Count  
       For i = LastRow To 1 Step -1  
/////////////////////////  
       Next i  
 
Можно вставить    
If Application.Rows(i).EntireRow.Hidden <> True Then  
End If  
 
Но при этом цикл все равно смотрит скрыта ли строка... Срок очень много и пока будут проверены все можно сходить кофе попить..  
 
Заранее благодарен!  
 
З.Ы.  
Если нужно сделаю пример.
Как получить список всех имен листов книги и список имен разрешенных для изменения диапазонов
 
Понял)) Еще раз большое спасибо!!!
Как получить список всех имен листов книги и список имен разрешенных для изменения диапазонов
 
Назрел еще один вопрос, как модно изменить имя разрешенного для изменения диапазона, зная его имя. То есть имя Диапазон1 заменить на Диапазон15?  
Заранее благодарен!
Как получить список всех имен листов книги и список имен разрешенных для изменения диапазонов
 
Большое спасибо, то что нужно!!!
Как получить список всех имен листов книги и список имен разрешенных для изменения диапазонов
 
Список диапазонов на листе с макросом, имена в новый лист "temps".  
Прикрепил пример. Диапазоны находятся на первом листе.
Как получить список всех имен листов книги и список имен разрешенных для изменения диапазонов
 
Здравствуйте УВ.Форумчане!  
Возникла проблема, нужно получить имена всех листов книги и список имен разрешенных для изменения диапазонов, на листе с которого вызван макрос. На новом листе.  
 
Примерно должно выглядеть так... только я не все знаю как написать, помогите поправить пожалуйста!  
 
Sub reads()  
   Worksheets.Add.Name = "temps"  
   Sheets("temps").Select  
for i = "Первый лист" To "Последний лист"  
Range(Cells(1, i).Value = Sheet.Name  
Next i  
 
for i = "Первый диапазон" To "Последний диапазон"  
Range(Cells(2, i).Value = ActiveSheet.Protection.Name  
Next i  
 
End Sub  
 
Заранее благодарен!
Отключение сообщения о том, что ячейка защищена от изменений
 
Понял как можно)  
   Range("" & "F" & "5" & "," & "l" & "7" & "," & "G" & "9" & "").Select  
 
Но появился другой вопрос. Как можно передать имя диапазона, а не его порядковый номер в эту строку, чтоб можно было удалять по имени, а не хранить номер, а потом искать, номер и удалять.  
   ActiveSheet.Protection.AllowEditRanges(1).Delete  
 
Private Sub CommandButton2_Click()  
ANS = ActiveSheet.Name  
ActiveRow = Selection.Row  
ActiveSheet.Unprotect Password:="123"  
   ActiveSheet.Protection.AllowEditRanges(1).Delete  
    Cells(ActiveRow, 8) = 1  
Worksheets(ANS).Protect Password:="123", UserinterfaceOnly:=True  
End Sub
Отключение сообщения о том, что ячейка защищена от изменений
 
Кто знает, как можно передать переделать Range("F8,F14,F20,F27,F32,H28").Select  
в Range(Cells(1,1), Cells(4,1), Cells(1,5), Cells(1,8), Cells(1,9),).Select  
или Range(R1C1, R1C4, R5C1, R8C1).Select  
 
И возможно ли это?    
заранее благодарен
Отключение сообщения о том, что ячейка защищена от изменений
 
У меня появилась идея лучше, задать ячейки для изменения, а для остальных выключить дабл клик. Решает часть проблем.  
Если строка разрешена для редактирования, то есть в 12-ом столбце 1, и жмем в ячейки которые можно редактировать, 1-я, 3-я, и 5-я то все ок. если нет то дабл клик отключен и защита работает. Проблема можно сказать решена)  
Не хватает только функции, BeforeChange)  
 
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)  
   ActiveRow = Selection.Row  
   ActiveCol = Selection.Column  
   If Cells(ActiveRow, 12) = 1 And (ActiveCol = 1 Or ActiveCol = 3 Or ActiveCol = 5) Then  
       Cancel = False  
   Else  
       Cancel = True  
   End If  
End Sub
Отключение сообщения о том, что ячейка защищена от изменений
 
Sirius, хороший способ, но не в моем случае, мне выделение заблокированных нужно)  
У меня в зависимости от выделенной ячейки работает соответствующий макрос.  
Но в любом случае всем спасибо за помощь в решении проблемы.
Отключение сообщения о том, что ячейка защищена от изменений
 
)))) Понял, большое спасибо!)
Отключение сообщения о том, что ячейка защищена от изменений
 
Скажите, это хоть в принципе, реально сделать?  
Если нет то выхода нет, придется терпеть мучения)
Сохранение бакап файла в текущую папку с проектом
 
Спасибо получилось!  
strPath = ThisWorkbook.Path & "\Temp"
Сохранение бакап файла в текущую папку с проектом
 
Доброе время суток!  
Подскажите, а как сохранять файл в текущую папку с проектом или в папку которая лежит в папке с проектом. Чтоб не нужно было жестко привязываться к месторасположению проекта.  
Код макроса взят из статьи "Создание резервных копий ценных файлов" из раздела "Приемы".  
strPath = "\TEMP"  
strPath = "TEMP"  
strPath = "\..\TEMP"  
И подобные не воспринимает.  
Заранее благодарен!
Отключение сообщения о том, что ячейка защищена от изменений
 
Доброе время суток УВ Форумчане!  
Подскажите пожалуйста, как отключить сообщение о том, что ячейка защищена от изменений, которое появляется при попытке изменения заблокированной ячейки на защищенном рабочем листе.  
Application.DisplayAlerts=False не помогает.  
 
Заранее благодарен!
максимально оптимизировать код VBA
 
А как можно включить xlInsideVertical и xlInsideHorizontal в BorderAround  
или тоже как-то сделать одной строчкой?  
Заранее благодарен!  
 
А то приходится добавлять после Range(Cells(i, 1), Cells(i, 13)).BorderAround Weight:=xlThin  
 
Дописывать  
 
   With Selection.Borders(xlInsideVertical)  
       .Weight = xlThin  
   End With  
   With Selection.Borders(xlInsideHorizontal)  
       .Weight = xlThin  
   End With
Печать выделенного диапазона
 
Большое спасибо, проблему решило!
Печать выделенного диапазона
 
Знаю, но нужно именно макросом.
Печать выделенного диапазона
 
Доброе время суток УВ Форумчане!  
Написал макрос для печати выделенного диапазона, выделение происходит нормально, но на принтер не отправляет... собственно загвоздка в последней строчке.  
Подскажите, что не так.  
Заранее благодарен!  
 
Sub PrintSelection()  
   a = Selection.Row  
   c = Selection.Column  
   b = a + Selection.Rows.Count - 1  
   d = c + Selection.Columns.Count - 1  
   Range(Cells(a, c), Cells(b, d)).Select  
   Selection.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False  
End Sub
Загвоздка с макросом "активности пользователя"
 
После удаления с листа, ComboBox все заработало так как нужно.  
Большое спасибо всем кто откликнулся!
Загвоздка с макросом "активности пользователя"
 
Если написать Cells(Active_Row, 14).Value = Cells(Active_Row, 1).Value  
Дебаг говорит, MetHod 'Value' of object 'Range' Failed  
Так что видимо не в этом дело
Загвоздка с макросом "активности пользователя"
 
Дебаг говорит, MetHod '_Default' of object 'Range' Failed
Загвоздка с макросом "активности пользователя"
 
KukLP  
Согласен, вы правы, в остальных местах я использовал боксы из-за возможностей поиска, но здесь без них можно обойтись. Сделал проверки, решило проблему отслеживания изменений, но породило новую, теперь при выборе значения из "проверки" макрос отслеживания срабатывает, но потом вылетает в дебаг "на нем".... может для проверок в нем нужно что-то поправить?  
Dim S As Integer  
 
Private Sub Worksheet_Change(ByVal Target As Range)  
Active_Row = Target.Row  
Cells(Active_Row, 14) = Cells(Active_Row, 1)  
S = 1  
End Sub  
 
З.Ы.  
Бокси создаются только по запросу, а по окончании работы с ними удаляются, так что размер файла от их количества совершенно не зависит.  
 
RAN  
Спасибо, обязательно посмотрю
Формула для суммирования по критериям
 
Теперь работает большое спасибо!!!
Загвоздка с макросом "активности пользователя"
 
Я просто, только начал с макросами знакомится...)
Загвоздка с макросом "активности пользователя"
 
Солоноват для меня пример... но придумал обходной спосою.  
Получается так... у меня всегда номер элемента ComboBox будет соответствовать строке, то есть ComboBox56, это строчка 56. Можно ли как-то узнать имя, активированного бокса? если да, то тогда будет работать для всех, что-то типа этого  
Private Sub ComboBoxN_Change()  
Application.EnableEvents = 0  
Form = ActiveSheet.Shapes.Range(Array(Form)).Name  
'Правда нужно будет узнать цифры из имени формы'  
Cells(Form, 14).Value = 1  
Application.EnableEvents = -1  
End Sub
Страницы: 1 2 3 4 5 6 След.
Наверх