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

Страницы: 1
Фильтрация таблицы с критерием из соседней ячейки
 
Доброго вечера!)
Не могли бы вы мне помочь в написании макроса? Имеется таблица. Нужно сделать так, чтобы при изменении ячейки D2 автоматически срабатывал фильтр в таблице во втором столбце. Критерий фильтра - ячейка D2.
Заранее спасибо)
Циклический график дежурств в зависимости от даты
 
Здравствуйте, форумчане!
У меня появилась загвоздка в решении вроде бы и несложной задачи. Если вы мне поможете, то буду вам очень признательна.

Есть график дежурств. Есть цикл -12 дней. То есть через 12 дней этот цикл повторится. Как будет выглядеть формула в ячейках? Понимаю что это как то связано с функцией ДАТАЗНАЧ, но не получается правильно написать формулу.

В примере как это должно выглядеть. На втором листе мои тщетные попытки воплотить идею.
вывод в ячейку из textbox в числовом формате
 
Доброго всем дня!)

У меня такой вопрос, имеется форма с большим количеством textbox. При вводе в textbox числа в ячейках эксель выводится текстовый формат. А как дописать правильно код, чтобы в ячейках эксель выводился числовой формат?

Да, я смотрела форум, советы, но там получается громоздкий макрос для одного textbox, а если много textbox?

В качестве примера я приложила файл с одной формой.
код макроса там такой
Код
Private Sub TextBox1_Change()
Sheets("БДП").Range("G2").Value = TextBox1.Value
End Sub
Вопрос: Как записать оптимально код макроса, чтобы при выводе на ячейку листа получился числовой формат
Удалить макросы при создании новой книги из шаблона
 
Здравствуйте! С Новым годом! Пусть новый год принесет всем Мира, добра, счастья!)

Помогите мне пожалуйста в решении вопроса.
Есть книга с макросами.
1 макрос -  в модуле ЭТА КНИГА (при открытии файла происходит нумерация документа)
2 макрос - модуль 1 (запуск формы)
3 макрос - модуль 2 (сохранение файла)
4 форма.

при сохранении файла в отдельный документ также переносятся все макросы, два из которых в новом документе не нужны. Это - 1 макрос, который находится в модуле ЭТА КНИГА и 3 макрос - сохранение файла.

Вот сам код сохранения файла:
Код
Sub сохранение_новый()
t = Application.ThisWorkbook.Path
t = StrReverse(Mid(StrReverse(t), InStr(1, StrReverse(t), "\") + 1))
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:=t & "\папки\" & CStr(Range("A4")) & "\" & CStr(Range("B4")) & "\" & Range("AC3") & ".xlsb"
Selection.Replace What:="[*]", Replacement:=""
ActiveSheet.Buttons.Delete
Application.DisplayAlerts = True
End Sub
Как сделать так, чтобы при сохранении в новом документе остались только форма и макрос  с модуля 1(запуск формы)?
Какую строчку в код нужно вписать?
Просто каждый раз открывая потом созданный документ в нем автоматически происходит перенумерация документа.

Заранее спасибо)
Изменено: Просто Ledi - 02.01.2018 14:48:55
Макрос для удаления строк в умной таблице
 
Помогите пожалуйста с макросом. На одном листе 2 умных таблицы. В одной из них(верхней) нужно удалить строки, оставив 2 верхние и итоговую(чтобы всего осталось 3 строки). Пробовала и с поиском первой пустой ячейки, и с последней заполненной... ничего не помогает - оно не удаляет, пишет ошибка,  а если что то и удаляет, то захватывает и вторую таблицу...
В примере на Лист 2 показано как есть и как должно быть. я в примере неправильно указала какие удалять с А5 по А17


Допустим,как указать условие, что если значение в первой колонке А будет больше 1, то строки удалить.
Что нужно дописать в этом коде?
Код
Sub очистка()
Dim TBL As ListObject
Set TBL = ActiveSheet.ListObjects("ремонты")
ActiveSheet.ListObjects("ремонты").ListColumns(1).DataBodyRange.Select
  If TBL.ListRows.Count > 1 Then
  TBL.DataBodyRange.Delete
  End If
End Sub
Изменено: Просто Ledi - 17.02.2017 18:16:10
макрос копирования и удаления отфильтрованных строк
 
Добрый вечер!)
Задача такая: в первой таблице автофильтром выделяем строки с нулевым значением в ячейке. Эти строки переносим во вторую таблицу, а в первой удаляем.
Я написала макрос, частично рекордером, частично дописала сортировку, он работает, но..в нем вставлен от рекордера конкретный диапазон отфильтрованной строки.
Range("A9:J9")
Нужно чтобы был не конкретный диапазон, а диапазон применяемый ко всей таблице. (количество строк же будет добавляться в ней)
Подскажите плизз, что нужно исправить в моем макросе?
Код
Sub удаление_в_архив()
'
'

'Application.ScreenUpdating = False
    ActiveSheet.Range("$A$1:$J$10000").AutoFilter Field:=10, Criteria1:="0,00"
    Range("A9:J9").Select
    Selection.Copy
    Sheets("архив").Select
    Range("A2").Select
    ActiveSheet.Paste
    Range("A2:J100000").Select
    Application.CutCopyMode = False
    ActiveWorkbook.Worksheets("архив").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("архив").Sort.SortFields.Add Key:=Range("A2"), _
        SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("архив").Sort
        .SetRange Range("A2:J100000")
        .Header = xlNo
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    ActiveWorkbook.Save
    Sheets("прайс").Select
    Range("A9:J9").Select
    Selection.ClearContents
     Selection.EntireRow.Delete
    ActiveSheet.Range("$A$1:$J$10000").AutoFilter Field:=10
    Application.ScreenUpdating = True
End Sub
Перемещение кнопки по столбцу в зависимости от активной ячейки
 
Здравствуйте!)
Есть таблица(прайс), в которой много строк. Есть кнопка, расположенная в столбце В,  которая добавляет новые строки.
Подскажите пожалуйста, как изменить макрос чтобы кнопка передвигалась по столбцу в зависимости от активной ячейки
Допустим активная ячейка С9, то кнопка в ячейке В9, если активная ячейка С6, то кнопка в ячейке В6
Код
Sub добавить_строку()
Application.ScreenUpdating = False
ActiveCell.Resize(1).EntireRow.Insert
Application.ScreenUpdating = True
End Sub
Изменено: Просто Ledi - 08.01.2017 16:19:15
Связанные выпадающие списки с данными из другого файла
 
Здравствуйте) Как сделать выпадающий список с данными из другого файла известно, а вот как сделать СВЯЗАННЫЕ выпадающие списки из другого файла - не нашла нигде.
Задача такая:
в Е1 - выпадающий список
в А8 - выпадающий список из другого файла, с названием из ячейки Е1, плюс формат xlsm
нужный лист - расход, ячейка - В2(наименований больше 1000 и они добавляются)

пробовала так - =ДВССЫЛ("[$E$1.xlsm]расход!$B$2:$B$100000")
выдает ошибку
и еще.. нужно чтобы при выборе нужного наименования в таблицу вставлялась полностью строка.. например А8:О8
копирование данных на другой лист с названием из ячейки
 
Здравствуйте!
Есть книга с несколькими листами. В первом листе вставляются данные, которые потом должны скопироваться на лист с названием из ячейки I4 .
В моем коде если вставить название листа, то все копируется правильно, а если вставить I4 в макрос, то выдает ошибку.. Вы не могли бы мне помочь с правильным написанием макроса?
Код
Sub Добавить_прайс()
    Worksheets("накладная").Range("B8:H8").Copy                         'копируем строчку с данными из формы
    Range("I4").Select
    n = Worksheets("I4").Range("A100000").End(xlUp).Row                'определяем номер последней строки в таблице прайс
    Worksheets("I4").Cells(n + 1, 1).PasteSpecial Paste:=xlPasteValues 'вставляем в следующую пустую строку
    Worksheets("накладная").Range("F2,H2,E4,E8,F8,G8").ClearContents  'очищаем форму
     Range("A2:G100000").Select
    ActiveWorkbook.Worksheets("I4").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("I4").Sort.SortFields.Add Key:=Range("D2"), _
        SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("I4").Sort
        .SetRange Range("A2:G100000")
        .Header = xlNo
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    ActiveWorkbook.Worksheets("I4").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("I4").Sort.SortFields.Add Key:=Range("D2:D100000"), _
        SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("I4").Sort
        .SetRange Range("A2:G100000")
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    
     
End Sub
Обозначение выходных в двухстрочном табеле
 
Здравствуйте!
Есть форма, в которой имеется табель, расположенный в 2 строках на каждого сотрудника.Как при помощи формул сделать так, чтобы при изменении месяца и года в табеле автоматически выскакивали буквы *В*, приходящиеся на воскресенья месяца?
Список файлов в определенной папке
 
Здравствуйте)
есть код вывода списка файлов, в виде гиперссылки
Код
Sub FileList()
    Dim V As String
    Dim BrowseFolder As String
     
    'открываем диалоговое окно выбора папки
    With Application.FileDialog(msoFileDialogFolderPicker)
        .Title = "Выберите папку или диск"
        .Show
        On Error Resume Next
        Err.Clear
        V = .SelectedItems(1)
        If Err.Number <> 0 Then
            MsgBox "Вы ничего не выбрали!"
            Exit Sub
        End If
    End With
    BrowseFolder = CStr(V)
     
    'добавляем лист и выводим на него шапку таблицы
    Sheets("поиск").Select
    Worksheets("поиск").Range("A1:A100" & Range("A65536").End(xlUp).Row).ClearContents
    With Range("A1")
        .Font.Bold = True
        .Font.Size = 12
    End With
    Range("A1").Value = "Имя файла"
     
    'вызываем процедуру вывода списка файлов
    'измените True на False, если не нужно выводить файлы из вложенных папок
    ListFilesInFolder BrowseFolder, True
End Sub
 
 
Private Sub ListFilesInFolder(ByVal SourceFolderName As String, ByVal IncludeSubfolders As Boolean)
 
    Dim FSO As Object
    Dim SourceFolder As Object
    Dim SubFolder As Object
    Dim FileItem As Object
    Dim r As Long
 
    Set FSO = CreateObject("Scripting.FileSystemObject")
    Set SourceFolder = FSO.getfolder(SourceFolderName)
 
    r = Range("A65536").End(xlUp).Row + 1   'находим первую пустую строку
    'выводим данные по файлу
    For Each FileItem In SourceFolder.Files
        Cells(r, 1).Formula = "=HYPERLINK(""" & FileItem.Name & """)"
    
        r = r + 1
        X = SourceFolder.Path
    Next FileItem
     
    'вызываем процедуру повторно для каждой вложенной папки
    If IncludeSubfolders Then
        For Each SubFolder In SourceFolder.SubFolders
            ListFilesInFolder SubFolder.Path, True
        Next SubFolder
    End If
 
    Columns("A").AutoFit
    
 Range("A2:A100").Sort Key1:=[A2]
 
    Set FileItem = Nothing
    Set SourceFolder = Nothing
    Set FSO = Nothing

но здесь окно с выбором папки, а мне нужно чтобы вместо этого автоматически искалось в определенной папке, с подпапкой из ячейки С1
что то типа этого:
Код
 Dim strDirPath, strMaskSearch, strFileName As String
strDirPath = ThisWorkbook.Path & "\" & 2016 & "\" & Range("C1") & "" 'Папка поиска
strMaskSearch = "*.xlsx*" 'Маска поиска
 
'Получаем первый файл соответствующий шаблону
strFileName = Dir(strDirPath & strMaskSearch)

если я заменяю в верхнем коде выбор папки этим кодом, то выдает ошибку
Код
 Set SourceFolder = FSO.getfolder(SourceFolderName)
Вопрос: как правильно заменить код диалогового окна на определенную папку?
Автоматическое заполнение табеля данными из таблицы
 
здравствуйте)
скажите, возможно ли такое решение, чтобы табель в таблице заполнялся автоматически на основании диапазона ячеек?
пример прилагается.

там есть еще и нюансы, в примере я выделила их красным цветом. пробовала функции впр, поискпоз, но не получается)
Выбор и открытие папки в userForm
 
Здравствуйте)
Имеется несколько папок : 2015, 2016, 2017 и т.д.
Они находятся в той же папке что и файл с макросом.
я делаю так:
Код
Private Sub CommandButton5_Click()
CreateObject("Wscript.Shell").Run """" & ThisWorkbook.Path & """"
End Sub

открывается папка в которой находится файл с макросом и со всеми этими папками. А как сделать так, чтобы выпадал список папок( список - 2015, 2016, 2017....) и при выборе в списке открывалась папка? и как это сделать в userform?
Сохранение файла с именем из ячейки в папку, где находится файл
 
Здравствуйте!
Для сохранения файла я использую макрос:
Код
Sub сохранение_новый()
'
'
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:="E:\МОЯ РАБОТА\2016\" & CStr(Range("A4")) & "\" & CStr(Range("B4")) & "\" & Range("AC3") & ".xlsx", FileFormat:=51

Application.DisplayAlerts = True
'
End Sub
но он сохраняет в конкретную папку на компьютере с выбором подпапки и названия из сохраняемого файла. А как сделать так, чтобы имя подпапки и файла так же бралось из файла, но сохранялось на диск, на котором находится файл с макросом? например файл с макросом установлен на флешке, нужно чтобы и новый файл сохранялся на флешке в подпапке с названием из сохраняемого файла.
Это нужно для того, чтобы работать с файлами на любом компьютере, а там названия дисков могут не совпадать.
Автоматическая нумерация бланка в зависимости от изменения ячейки
 
добрый день) прошу помощи в автоматической нумерации бланка в зависимости от содержимого определенной ячейки. пример прилагается.  :)
Выбор формулы в зависимости от выбранного значения
 
помогите составить формулу по нескольким значениям *ЕСЛИ*

например, если в столбце выбрано одно значение, то формула должна быть одна, а если выбрано другое значение, то формула должна быть другая.. пример прилагается.
я пробовала составить  - не получилось) :oops:
выборка данных с разных файлов в одной папке
 
Здравствуйте!  я новичок в кодах, вернее совсем не знаю их, но очень хочу автоматизировать свою работу. Шаблон с формулами я сделала, но дальше никак... Если бы вы помогли мне в этом, я была бы вам очень признательна.

есть шаблон сменок с формулами, заполняю его и сохраняю лист в новом файле, в итоге в папке набирается файлов 50-60, а дальше задача: с этих файлов нужно сделать выборку в отдельный лист, из определенного диапазона строк. а еще лучше бы было если бы эта выборка автоматом заносилась при заполнении сменок ( а в идеале и изменялась с дополнением данных сменки)

1 выборка : из диапазона D68:R68 то есть со всех 50 файлов этот диапазон копировался в одну таблицу на одном отдельном файле.
2 выборка : из таблицы с диапазоном С73-С102 : U73-U102 по затратам.(пример этой выборки на 2 листе прикрепленного файла)

Может это будет выглядеть в виде формулы или ссылки, а может в виде кнопки с макросами.
Изменено: Просто Ledi - 16.08.2016 12:59:37
Страницы: 1
Наверх