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

Страницы: 1 2 След.
Как обновить форму при выборе из ComboBox
 
Здравствуйте, подскажите подскажите пожалуйста! У меня имеется "Форма" на ней "ComboBox", он загружает список дат с листа "Нор_Док_МРК" и при выборе даты записывает на лист "Данные" ячейка "G5". Как сделать так? чтобы при выборе из списка "ComboBox", форма перезагружалась, и чтобы даты в списки загружались в формате "dd/mm/yyyy", и записывались на лист "Данные" ячейка "G5" в таком же формате.
Изменено: Delux - 27.06.2025 12:29:11
Создать список в столбце без повторов
 
Здравствуйте, форумчане подскажите пожалуйста. В столбце "D:D" имеется, список Наименование, нужно в этом списке удалить дубликаты, которые повторяются больше одного раза, и подтянуть этот список. Например из этого списка:
Яблоко
Яблоко
Груша
Лимон
Киви
Киви
Лайм
Арбуз
Яблоко
Арбуз
Дыня
Груша
Банан
Виноград
Банан
Виноград
Апельсин
Грейпфрут

Должно получиться это:
Лимон
Лайм
Дыня
Апельсин
Грейпфрут
В примере, есть макрос, который удаляет дубликаты, но только проблема в том, что если "Яблоко" повториться более 1 раза, то он удалит только один повтор, а надо оба.
Код
Sub СоздатьСписокБезПовторов()
    Dim vItem, avArr, i As Long, iColl As New Collection, lastRow As Long
     
    With ActiveSheet
        lastRow = .Cells(.Rows.Count, 4).End(xlUp).Row
        ReDim avArr(1 To lastRow, 1 To 1)
        On Error Resume Next
        For Each vItem In .Range("D2:D" & lastRow).Value
            If Not IsEmpty(vItem) Then
                iColl.Add vItem, CStr(vItem)
                If Err = 0 Then
                    i = i + 1
                    avArr(i, 1) = vItem
                Else
                    Err.Clear
                End If
            End If
        Next
     .Range("D2:D" & lastRow).Value = Empty    ' очистить эти ячейки
    End With
    On Error GoTo 0
    
    If i Then Sheets("Продукты").[D2].Resize(i).Value = avArr
End Sub
Изменено: Sanja - 18.06.2025 07:00:32 (удалил один файл)
Как скопировать строку заданное число раз
 
Здравствуйте, помогите мне с макросом. Этот макрос я взял от сюда, а  как можно сделать так, чтобы не выделять каждую строку, а автоматически нажать на кнопку и он пройдет и создаст нужное количество строк, но только на другом листе например со строки "A79". Т.е запускаем макрос на листе "Яблоко", а создаст нужное количество строк на листе "Лимон", как в примере
Сортировка по датам
 
Здравствуйте, посмотрите такой макрос:
Код
Sub Макрос1()
    With ActiveWorkbook.ActiveSheet
        .Sort.SortFields.Clear
        .Sort.SortFields.Add Key:=.UsedRange.Range("D4").Resize(.UsedRange.Rows.Count - 1), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
        .Sort.SetRange .UsedRange
        .Sort.Header = xlYes
        .Sort.MatchCase = False
        .Sort.Orientation = xlTopToBottom
        .Sort.SortMethod = xlPinYin
        .Sort.Apply
    End With
End Sub
Проблема следующая, когда пытаюсь отсортировать по датам , а в  переди есть объединенные строки, то выдаёт ошибку ".Sort.Apply". Что можно сделать?
Как макросом в не пустых ячейках выделить все границы
 
Здравствуйте, подскажите можно ли макросом в не пустых ячейках выделить все границы. Как это делать "условным форматированием" я знаю, а можно без него, количество ячеек может быть разное? Чтобы получилось как в примере.
Макрос из списка разбить на другой лист в три столбца
 
Здравствуйте, у меня такая просьба можно как-то макросом столбец "E" на "Лист1" разбить на 3 столбца, в "Лист2". Пример прикладываю. Спасибо
Как ускорить формулу
 
Здравствуйте подскажите, пожалуйста, как ускорить этот макрос.
Код
Sub Vstavit_formulu1()
    Application.ScreenUpdating = False
    ActiveCell.Offset(0, 2).Range("A1").Select
    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-2],CHOOSE({1,2},'Средства измерений'!C6,'Средства измерений'!C2),2,0)"
    ActiveCell.Offset(0, 1).Range("A1").Select
    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-3],CHOOSE({1,2},'Средства измерений'!C6,'Средства измерений'!C3),2,0)"
    ActiveCell.Offset(0, 1).Range("A1").Select
    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-4],CHOOSE({1,2},'Средства измерений'!C6,'Средства измерений'!C4),2,0)"
    ActiveCell.Offset(0, 1).Range("A1").Select
    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-5],CHOOSE({1,2},'Средства измерений'!C6,'Средства измерений'!C5),2,0)"
    ActiveCell.Offset(0, -3).Range("A1:D1").Select
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
    ActiveSheet.Paste
    Application.CutCopyMode = False
    ActiveCell.Offset(1, -2).Range("A1").Select
    Application.ScreenUpdating = True
End Sub
Как создать листы из списка и скопировать все данные из определенного листа
 
Здравствуйте, нужна Ваша помощь. Как создать листы из списка и скопировать все данные из определенного листа. Я нашел макрос, который создаст листы из списка на листе "Месяцы", а хотелось бы, чтобы в созданные листы автоматически перенеслись данные, выпадающие списки, и чтобы выглядели все вновь созданные листы, как лист "Шапка".
Код
Sub macro()
    Dim i As Integer, j As Integer, index As Integer
    i = 0
    j = 0
    index = 1
    
    While Worksheets("Месяцы").Cells(1 + i, 1) <> 0
        For j = 1 To Sheets.Count Step 1
            If Sheets(j).Name <> Worksheets("Месяцы").Cells(1 + i, 1) Then
                index = index + 1
            ElseIf Sheets(j).Name = Worksheets("Месяцы").Cells(1 + i, 1) Then
                j = Sheets.Count
            End If
        Next j
        'MsgBox index
        'MsgBox Sheets.Count + 1
        If index = Sheets.Count + 1 Then
            Sheets.Add After:=Sheets(Sheets.Count)
            ActiveSheet.Name = Worksheets("Месяцы").Cells(1 + i, 1)
        End If
        index = 1
        i = i + 1
    Wend
    Worksheets("Месяцы").Activate
End Sub

Форма с поиском, чтобы поиск осуществлялся, и по буквам и по цифрам
 
Здравствуйте помогите пожалуйста. Данная форма ищет только по буквам, что нужно прописать в ней, чтобы поиск осуществлялся, и по буквам и по цифрам?
Можно ли формулой избавиться от экспоненциального числа
 
Здравствуйте подскажите, можно ли формулой по условию избавиться от экспоненциального числа, например если получилось вот такой "2,78E-08", то пишем "0,0000000278", а если нет то полученное число
Всплытие формы по щелчку объединенной ячейки
 
Здравствуйте, подскажите, что нужно подправить в коде, чтобы форма всплывала по щелчку объединенной ячейки? Например (B34:D34)
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  If Target.Count > 1 Then Exit Sub
   If Not Intersect(Target, [B34,B35,B36,B37,B38,B39,B40,B41,B42,B43,B44,B45,B46,B47,B48]) Is Nothing Then
   Поиск_приборов_одна.Show
   End If
End Sub
Изменено: Delux - 18.10.2021 08:01:08
Выпадающий список ComboBox с поиском на форме
 
Здравствуйте, подскажите пожалуйста как в моем примере сделать так, чтобы каждый ComboBox вставлял найденный текст по щелчку этого текста. Например "ComboBox1" вставлял в ячейку "Лист1!N8", а "ComboBox2" вставлял в ячейку "Лист1!N10". Где взял пример не помню
Как макросом скопировать диапазон ячеек и вставить не теряя ссылки формул
 
Здравствуйте, подскажите пожалуйста, как можно макросом скопировать диапазон ячеек и вставить на другой лист сохраняя при этом ссылки в формулах
Пользуюсь этим макросом, но он вставляет значения
Код
Sub Копировать_данные()
    Application.ScreenUpdating = False
    Sheets("Лист1").Range("A21:J250").Copy
    Sheets("Лист3").Range("A3").PasteSpecial xlPasteValues
    Application.ScreenUpdating = True
End Sub
Как обратиться к листу не переходя на него
 
Здравствуйте подскажите пожалуйста как в этом коде обратиться к "Лист1" не переходя на него вот в этой строчке?
Код
 For Each vItem In Range("A2", Cells(Rows.Count, 1).End(xlUp)).Value
Я когда нахожусь на "Лист1", макрос выполняется, а когда на другом то нет
Код
Sub Extract_Unique()
    Dim vItem, avArr, li As Long
    ReDim avArr(1 To Rows.Count, 1 To 1)
    With New Collection
        On Error Resume Next
        For Each vItem In Range("A2", Cells(Rows.Count, 1).End(xlUp)).Value
            'Cells(Rows.Count, 1).End(xlUp) – определяет последнюю заполненную ячейку в столбце А
            .Add vItem, CStr(vItem)
            If Err = 0 Then
                li = li + 1: avArr(li, 1) = vItem
            Else: Err.Clear
            End If
        Next
    End With
    If li Then Sheets("Лист2").[E2].Resize(li).Value = avArr
End Sub
Связанные выпадающие списки не в отсортированном справочнике
 
Здравствуйте подскажите, можно ли сделать связанный выпадающий список, как в моем примере. У меня, там сперва выбирается вещество по столбцу "B:B", а потом методика по столбцу "C:C". Я уже посмотрел, этот метод, но у меня наоборот сортировка идет не по первому списку. Можно, это как-то сделать?
Показать скрытые строки по условию
 
Здравствуйте, нужна Ваша помощь. Есть макрос который скрывает строки по условию, если в строке содержится слово "пусто", а как сделать, чтобы он выполнял наоборот, показывал только те скрытые строки в которых содержится слово "пусто"?
Выполнить макрос в столбце на заполненных ячейках, начина с выбранной
 
Здравствуйте, помогите пожалуйста с проблемой. Нужна выполнить макрос в столбце "D:D", только на ячейках которые содержат текст, и так до последней заполненной ячейки. Таких ячеек может быть около тысячи
Запуск формы двойным щелчком по любой ячейки из столбца
 
Здравствуйте, подскажите мне пожалуйста. Как запустить форму двойным щелчком по любой ячейки из столбца "B:B", и перейти в вызванную форму. Я в модуле листа сделала так
Код
Private Sub
Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not
Intersect(Target, Range("C:C")) Is Nothing And Target.Columns.Count =
1 Then
        Call Userform1
            Userform1
                .TextBox2 = ActiveCell.Offset(0, 0) 'Наименование
                .TextBox1 = ActiveCell.Offset(0, -1) '№ п/п
                .TextBox3 = ActiveCell.Offset(0, 3) 'Положение                
            End With
        End If
End Sub
И теперь, надо выйти из ячейки и перейти в форму. А как чтобы сразу переходить в форму
Формы выдает ошибку при переносе данных из textbox в ячейки
 
Здравствуйте подскажите, с таким моментом. Формы выдает ошибку при переносе данных из textbox в ячейки. Когда делаю так "ActiveCell.FormulaR1C1=Me.TextBox3", то всё нормально, а когда так "ActiveCell.FormulaR1C1=CDbl(Me.TextBox3), ругается. Что делать?
Автоматический отображение данных из ячеек в форму textbox
 
Здравствуйте. Такой вопрос. У меня есть форма в которую заношу данные, а она по кнопке "Из формы в ячейки" переносит их в ячейки, и собирает данные обратно в форму по кнопке из "ячеек в форму". Данные разносятся и собираются, относительными ссылками то есть , запускаю форму -> занес данные -> в стаю на ячейку B2 -> нажимаю кнопку  "Из формы в ячейки" данные разносятся в ячейки "B2" "C2", "D2", "E2", "F2",  если "B3" то в "B3", "C3", "D3", "E3","F3" и т.д, Наоборот так же работает. А как сделать та чтобы встал на ячейку "B4" и данные автоматически отобразились в textbox, без нажатия кнопок?
Вставить текст из нескольких TextBox в активную ячейку
 
Здравствуйте. Помогите решить один вопрос. В моём примере есть форма в ней есть несколько TextBox, я ввожу данные в них а они потом вводят в эти данные в активную ячейку. Проблема в том, что я ввожу данные в TextBox, а они заносяться только после того, как я обратно активирую TextBox1, а хотелось бы после того, как нажмёшь кнопку "Ввести"
Вывод сообщения о том, что макрос запускается не на том листе
 
Здравствуйте подскажите как, вывести сообщение от что макрос запускается не на том листе. Как в моём примере, чтобы шла проверка на том ли листе он запускается и в том ли столбце. Дополнить.
Код
If Intersect(ActiveCell, Range("A:A")) Is Nothing Then
        MsgBox "Выделите нужную ячейку в столбце A", vbInformation, "Внимание!!!"
        Exit Sub
    End If
Три случайных числа по условию
 
Здравствуйте, помогите сообразить следующую формулу. Нужно чтобы генерировались три случайных числа от 10 до 20, каждое сгенерированное число , первое условие  не должно быть меньше или больше другого больше чем на 2, например должно получиться так 16;14;15, второе условее сгенерированные числа не должны выходить за пределы 10 и 20.
Изменено: Delux - 11.09.2020 20:59:32
Как применить макрос вставки случайных чисел к выделенным строкам
 
Здравствуйте. Помогите пожалуйста с таким вопросом. Я создал макрос который подбирает, случайные числа, т.е я встаю на любую ячейку из столбца "D:D", запускаю макрос и он вносит случайное число из указанного диапазона, в ячейку из столбца "O:O". А  нужно, чтобы например я выделил ячейки "D3:D4" и соответственно он разнес их в ячейки "O3:O4", или "D25:D27" и разнес их в ячейки "O25:O57". Ячейки в столбце "D:D" могут быть разные.
Как макросом вставить скопированные ячейки
 
Здравствуйте. Нужна помощь. Я копирую любой диапазон с данными, и нужно макросом реализовать вставку копируемого диапазона в активную ячейку. Как макросом реализовать "ctrl+v"?
Изменено: Delux - 30.08.2020 14:18:25
Как макросом преобразовать формулу из диспетчер имен
 
Здравствуйте, подскажите  возможно ли макросом преобразовать формулу из диспетчер имен. Например я создал формулу в диспетчере имен присвоил ей имя, и теперь могу её вводить в ячейки, не полностью, а по названию. Можно сделать так, чтобы допустим я встал на одну из таких формул, запустил макрос, и в ячейки появилась полностью прописанная формула.
Как в Ribbon-панели назначить макрос для каждого item id и изменить размер изображения
 
Здравствуйте. Подскажите как в Ribbon-панели назначить макрос для каждого item id и изменить размер изображения. Чтобы при выборе <item id="Кнопка1" label="Яблоко", запускался макрос1, <item id="Кнопка2" label="Груша, запускался макрос2, и тд. С обычными кнопками разобрался, а здесь ума не хватает.
Заархивировать папку по пути из ячейки
 
Здравствуйте. Помогите пожалуйста подправить следующий макрос, чтобы можно было архивировать файл по пути из ячейки. Только, чтобы ссылка была относительная, т.е например встаю на ячейку "AF9", тогда путь берет из ячейки "AC9", а если встаю на ячейку "AF25", тогда путь берет из ячейки "AC25". Заранее при много благодарен.
Как макросом вызвать аргументы функции
 
Здравствуйте, подскажите можно ли макросом вызвать аргументы функции определенной формулы, если можно то как?
Сохранение выделенных листов в отдельный файл
 
Здравствуйте, помогите пожалуйста с таки макросом. Я нашел его на этом сайте
Способ 4. Сохранение только выделенных листов в новый файл
Код
Sub SplitSheets4()
    Dim CurW As Window
    Dim TempW As Window
    Set CurW = ActiveWindow
    Set TempW = ActiveWorkbook.NewWindow
    CurW.SelectedSheets.Copy
    TempW.Close
End Sub
А что нужно, чтобы этот макрос брал название из оригинального файла и добавлял к нему текст "в печать" и сохранялся в ту же директорию, где находится оригинал
и применял к этим листам следующий макрос
Код
Sub AAA()
Cells.Select
    With Selection.Validation
        .Delete
        .Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator _
        :=xlBetween
        .IgnoreBlank = True
        .InCellDropdown = True
        .InputTitle = ""
        .ErrorTitle = ""
        .InputMessage = ""
        .ErrorMessage = ""
        .ShowInput = True
        .ShowError = True
    End With
    Range("F12").Select
        Cells.Select
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("A1").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = ""
    Range("A1").Select
    Cells.FormatConditions.Delete
  End Sub
Страницы: 1 2 След.
Наверх