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

Страницы: 1
Разные название столбцов сгруппировать в 1 раздел и с него сделать сводную таблицу, Названия столбцов надо объединить в 1 раздел и по этим данным надо сделать сводную таблицу
 
Здравствуйте!
Дано: таблица, данные в которую берутся с ответов в форме яндекс, дальше, с этих данных делаю слияние с вордом, первый шаг, криво, косо, но я сделала, и знаю, что работать будет. Не могу сообразить как сделать сводную таблицу с ответов этой формы.
Для чего это. В школе 2 раза в год проводят мониторинг уровня воспитанности, и считать это все ручками, ну ооочень утомительно.
Прикрепляю свою экселевскую таблицу, документ ворд, в котором нарисована таблица, ее хочу сделать сводной.
Запинка в том, что чтобы в сводную все это сделать, надо столбцы, которые относятся к определенной категории (любознательность, отношений к школе, природе и т.д.) надо перенести в строки и в строках уже написать эти категории, а это очень долго. Другого решения я не вижу.
Помогите пожалуйста
Выпадающий список с другого листа с подстановкой при введение символов, Объясните пожалуйста, как работает этот макрос
 
Прошу объяснить, что в этом макросе за что отвечает, есть название лист, это лист с которого берут данные, там есть цифры, 1 и 3, что и зачем там менять и что у=к чему. Объясните пожалуйста, хочу чтобы не просто м\помогли, за меня изменили, но и чтобы я сама поняла, почему так.
В базе школьного психолога на стр беседы должен вываливаться список с листа база клиентов, по мере ввода символов, а если такого значения нет, предложить добавить новое значение в таблицу с клиентами. Видела макросы которые выполняют о, что мне надо, но они берут данные с одного листа
Зависящий список от значения(не от списка), Создание зависящего списка не от другого списка, а от значения
 
Здравствуйте! Не могу сообразить, как сделать, есть таблица, где значение в ячейку приписывается в зависимости от значения другой ячейки, а список надо сделать зависящим от значения в первой ячейки.
Как это выглядит на примере. Есть лис со списком учителей, есть лист на котором будут писать какие уроки у каких классов ведет учитель. при условии, что один учитель ведет не у всех классов
счет количества букв с цифрами, нужно посчитать сколько будет сумма букв и цифр
 
есть ячейки с содержимым просто цифры, буквы и цифры, к примеру 2, н7\2, н7, должно быть равно 4\н14, как все это реализовать
Выделение ячеек цветом, при условии, что в столбцах есть абсолютно одинаковые ячейке
 
столбце а и б  надо выделить цветом, если есть одинаковые строки к примеру если а1=а3, а б1=б3, то они будут закрашены, а если а1=а3, аб1 не равноб3 то строка не закрашивается
Защита на листе включается автоматически, защищенными становятся полностью все ячейки, без "согласия" пользователя
 
В книге есть макрос, для защиты от пользователя, но не от макроса.
Код
Private Sub Workbook_Open()
    Dim wsSh As Object
    For Each wsSh In Me.Sheets
        Protect_for_User_Non_for_VBA wsSh
    Next wsSh
End Sub
Sub Protect_for_User_Non_for_VBA(wsSh As Worksheet)
    wsSh.Protect Password:="13092008", UserInterfaceOnly:=True
End Sub
На листе таблица, в которой защита только на первой строке, остальные доступны для изменения пользователем. Есть кнопка с макросом, замена символов, сортировка.
Код
Sub оформление_фактуры_счета()
'
' оформление_фактуры_счета Макрос
    ActiveWorkbook.Worksheets("Счет фактура").ListObjects("Таблица1").Sort. _
        SortFields.Clear
    ActiveWorkbook.Worksheets("Счет фактура").ListObjects("Таблица1").Sort. _
        SortFields.Add Key:=Columns("A:A"), SortOn:=xlSortOnValues, Order:= _
        xlAscending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Счет фактура").ListObjects("Таблица1").Sort
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    Range("A3").Select
    ActiveCell.FormulaR1C1 = "|01851"
    Cells.Replace What:="|", Replacement:="", LookAt:=xlPart, SearchOrder:= _
        xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
    Range("E4").Select
    ActiveCell.FormulaR1C1 = "I 0"
    Cells.Replace What:="I", Replacement:="", LookAt:=xlPart, SearchOrder:= _
        xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
End Sub
Sub замена_палок()
'
' замена_палок Макрос
    Range("E4").Select
    ActiveCell.FormulaR1C1 = "I 0"
    Cells.Replace What:="I", Replacement:="", LookAt:=xlPart, SearchOrder:= _
        xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
    Range("E3").Select
    ActiveCell.FormulaR1C1 = "15|"
    Cells.Replace What:="|", Replacement:="", LookAt:=xlPart, SearchOrder:= _
        xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
    ActiveWindow.SmallScroll Down:=-33
End Sub

Sub попорядку123_выполняем_все_макросысчетфактуры()
   Call оформление_фактуры_счета
   Call замена_палок
End Sub
 
Из всего этого работает только сортировка, и включаются фильтры. Что не так????
Как убрать эти строки из кода?Чтобы лишнего ничего не удалить. Замену не делает на 3,4 строках  и начиная с 43. Как прикрепить файл(этот лист)не знаю. При копировании появляется ошибка400
Код
Range("A3").Select
    ActiveCell.FormulaR1C1 = "|01851"
Макрос: заменить все "0" на пусто, на защищенном листе не работает
 
на защищенном листе есть ячейки с защитой для пользователя, но не от макроса и без защиты, так же, есть несколько макросов, которые работают на этом листе, но один из них, выполняет задачу не до конца. Для того, чтобы макрос мог работать в защищенных ячейках, написан этот код.
Код
Private Sub Workbook_Open()    Dim wsSh As Object
    For Each wsSh In Me.Sheets
        Protect_for_User_Non_for_VBA wsSh
    Next wsSh
End Sub
Sub Protect_for_User_Non_for_VBA(wsSh As Worksheet)
    wsSh.Protect Password:="11111", UserInterfaceOnly:=True
End Sub
Не до конца работает макрос, который ниже
Код
Sub округление_суммы_заказа_2()
'
' округление_суммы_заказа_2 Макрос
'

'
    Range("P1").Select
    Selection.AutoFill Destination:=Range("P1:P286"), Type:=xlFillDefault
    Range("P1:P286").Select
    ActiveWindow.SmallScroll Down:=-45
    ActiveWindow.ScrollRow = 223
    ActiveWindow.ScrollRow = 198
    ActiveWindow.ScrollRow = 148
    ActiveWindow.ScrollRow = 143
    ActiveWindow.ScrollRow = 138
    ActiveWindow.ScrollRow = 64
    ActiveWindow.ScrollRow = 59
    ActiveWindow.ScrollRow = 55
    ActiveWindow.ScrollRow = 28
    ActiveWindow.ScrollRow = 22
    ActiveWindow.ScrollRow = 2
    Columns("P:P").Select
    Selection.Copy
    Range("A1").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("P1").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Columns("A:A").Select
    Selection.Replace What:="0", Replacement:="", LookAt:=xlWhole, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
А именно, при защите, он не заменяет "0" на пусто, если защиту с листа снять, все работает. Помогите пожалуйста, почему так?
Защитить часть ячеек ((скрыть формулу во всех) от пользователя, а не от макроса, защитить отдельные листы
 
в инете нашла вот что
КАК ЗАЩИТИТЬ ЛИСТ ОТ ПОЛЬЗОВАТЕЛЯ, НО НЕ ОТ МАКРОСА?
Иногда бывает полезно защитить данные на листе от изменений другими пользователями, но при этом так же надо будет работать с данными на листе из VBA(т.е. вносить изменения с помощью кода). Обычная защита листа, конечно, подходит, хоть и есть небольшой недостаток: надо перед каждым обращением к листу снимать с него защиту, выполнять необходимые действия и защищать заново:
Код
Sub Write_in_ProtectSheet()    'снимаем защиту с листа
    Worksheets("Лист1").Unprotect
    'если лист защищен с паролем 1234: Worksheets("Лист1").Unprotect "1234"
    'действия на листе.Например,изменение значения ячейки А1
    Cells("A1").Value = "www.excel-vba.ru"
    'устанавливаем защиту на лист
    Worksheets("Лист1").Protect
    'если лист был защищен с паролем 1234: Worksheets("Лист1").Protect "1234" End Sub
Но есть метод проще.
Если выполнить ниже приведенную строчку кода, то пользователю невозможно будет изменить данные на листе(кроме тех, которые Вы сами разрешите), однако код VBA(макрос) сможет преспокойно вносить любые изменения, не снимая защиту.

Код
Sub Protect_for_User_Non_for_VBA()    ActiveSheet.Protect Password:="1111", UserInterfaceOnly:=True
End Sub

В коде выше в качестве примера взят активный лист, но можно указать любой:
Код
Sub Protect_for_User_Non_for_VBA()    Sheets(2).Protect Password:="1111", UserInterfaceOnly:=True
    Sheets("Лист1").Protect Password:="1111", UserInterfaceOnly:=True End Sub
чем отличается от этого, какой лучше ????
Код
Sub Protect_for_User_Non_for_VBA(wsSh As Worksheet)
    wsSh.Unrotect "1111"
    wsSh.Protect Password:="1111", UserInterfaceOnly:=True
End Sub


Примечание: данный макрос лучше всего прописывать на событие открытия книги(модуль ЭтаКнига(ThisWorkbook)), т.к. сразу после закрытия и открытия книги данная защита снимается.Можно ставить защиту сразу на все листы книги при открытии таким кодом:
Код
Private Sub Workbook_Open()
    Dim wsSh As Object
    For Each wsSh In Me.Sheets
        Protect_for_User_Non_for_VBA wsSh
    Next wsSh
End Sub
Sub Protect_for_User_Non_for_VBA(wsSh As Worksheet)
    wsSh.Protect Password:="1111", UserInterfaceOnly:=True
End Sub

Данный код вставляется в модуль ЭтаКнига. Плюс необходимо перед установкой защиты снять установленную(если она была):
Код
Sub Protect_for_User_Non_for_VBA(wsSh As Worksheet)    wsSh.Unrotect "1111"
    wsSh.Protect Password:="1111", UserInterfaceOnly:=True
End Sub
Ну и если Вам только на один лист надо установить, то убираем цикл и вызываем процедуру только для нужного листа:
Код
Private Sub Workbook_Open()
    Protect_for_User_Non_for_VBA Me.Sheets("Лист1")
End Sub
Sub Protect_for_User_Non_for_VBA(wsSh As Worksheet)
    wsSh.Protect Password:="1111", AllowFiltering:=True, UserInterfaceOnly:=True
End Sub
Примечание: Метод защиты через UsefInterface всем хорош, но есть одно ограничение: метод невозможно использовать в книге с общим доступом(Рецензирование -Доступ к книге), т.к. при общем доступе существуют ограничения, среди которых и такое, которое запрещает изменять параметры защиты для книги в общем доступе.
Изменено: elena8971 - 13.10.2016 10:05:14
Если в столбце есть пустая ячейка, то очистить всю строку
 
Здравствуйте! прошу помощи в таком вопросе Есть таблица, в которой данные распределены группами (в группе может быть разное количество строк), группы разделяет единственная пустая ячейка, в столбце "с" (в таблице раскрасила разные группы). Так вот, надо если С=пусто то и другие сделать пустыми. На строку В не обращать внимания.Спасибо
Округлить ячейки если число, если текст, пропустить, Округлить ячейки если число, если текст, пропустить . В поиске смотрела, не нашла
 
Округлить ячейки если число, если текст, пропустить  В столбце а есть ячейки, которые содержат как числа, так и текст, Ячейки с текстом надо пропустить, ничего с ними не делать. Ячейки с числами округлить (кратными 5 сделать)
Копирование данных из каждой 4, начиная с первой, в каждую 5 начиная со второй
 
надо скопировать данные из каждой 4 ячейки , начиная с первой (столбец A)  в каждую 5 начиная со второй (столбец д). Для наглядности раскрасила ячейци, чтобы было видно, из какой ячейки в какую надо скопировать (копируем из первой табл  
Расшифровать макрос для дальнейшего использования
 
Здравствуйте, помогите пожалуйста расшифровать макрос для дальнейшего использования
Код
Sub bb()
Dim a As Range
  For Each a In Columns(2).SpecialCells(xlCellTypeConstants).Areas
    a.Cells(2, 0).Value = WorksheetFunction.Sum(a)
  Next
End Sub
Отображение значений выражения, отвечающим условию, при невыполнении условия результат не пишем
 
В последней таблице не отображать строки с 0 во второй колонке, при этом, результаты должны быть без пропусков строк, нашла макросhttp://www.planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=8&TID=10688&TITLE_SEO=10688&MID=827... но как его применить в моем случае, не знаю. В примере, не должно быть строк, выделенных красным цветом.
Страницы: 1
Наверх