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

Страницы: 1 2 След.
Вытащить из ячеек только номер ТТН VBA, оставить в ячейках только номера ТТН VBA
 
Спасибо большое Msi2102, теперь работает как надо!
Вытащить из ячеек только номер ТТН VBA, оставить в ячейках только номера ТТН VBA
 
Цитата
В следующий раз пример сразу прикладывайте
Код
?
1
2
3
4
5
6
7
8
9
10
Sub TTTNNN()
   Dim re, arr1, n As Long
   arr1 = Range("P2:P" & Cells(Rows.Count, 16).End(xlUp).Row)
   Set re = CreateObject("VBScript.regExp"): re.Pattern = "(\d{7})[А-Я]{2}"
   For n = 1 To UBound(arr1)
       If re.test(arr1(n, 1)) Then arr1(n, 1) = re.Execute(arr1(n, 1))(0).SubMatches(0) Else arr1(n, 1) = ""
   Next
   Range("Q2:Q" & Cells(Rows.Count, 16).End(xlUp).Row).NumberFormat = "@"
   Range("Q2:Q" & Cells(Rows.Count, 16).End(xlUp).Row) = arr1
End Sub
Доброе утро.
Подскажите в чем может быть проблема. Данный код не везде вытаскивает номер ТТН. Прикрепляю пример с кодом и данной проблемой. В некоторых ячейках после обработки остается пустое поле.
Удаление строк, если нету в списке VBA, Удалить строки, если нету в списке VBA
 
Добрый день. Нашел вот такой код на просторах интернета. Подскажите может кто его подправить?

ТекстДляПоиска = "шт" - как сдесь сделать перечисление? (но обязательно надо чтоб список значений нужно было вписывать в самом коде, а не на отдельном листе, или диапазоне).
Пример:
ТекстДляПоиска = "шт", "цена" все строки которые не содержат данные значения нужно удалить, включая пустые. Вхождение можно не точное.
Заранее Благодарствую!
Код
Sub УдалениеСтрокПоУсловию2()
    Dim ra As Range, delra As Range, ТекстДляПоиска As String
    Application.ScreenUpdating = False    ' отключаем обновление экрана
 
    ТекстДляПоиска = "шт"    ' удаляем строки с таким текстом
 
    ' перебираем все строки в используемом диапазоне листа
    For Each ra In ActiveSheet.UsedRange.Rows
        ' если в строке найден искомый текст
        If ra.Find(ТекстДляПоиска, , xlValues, xlPart) Is Nothing Then
            ' добавляем строку в диапазон для удаления
            If delra Is Nothing Then Set delra = ra Else Set delra = Union(delra, ra)
        End If
    Next
    ' если подходящие строки найдены - удаляем их
    If Not delra Is Nothing Then delra.EntireRow.Delete
    
End Sub
Удаление строк, если нету в списке VBA, Удалить строки, если нету в списке VBA
 
Добрый день. Нашел вот такой код на просторах интернета. Подскажите может кто его подправить?

ТекстДляПоиска = "шт" - как сдесь сделать перечисление? (но обязательно надо чтоб список значений нужно было вписывать в самом коде, а не на отдельном листе, или диапазоне).
Пример:
ТекстДляПоиска = "шт", "цена" все строки которые не содержат данные значения нужно удалить, включая пустые. Вхождение можно не точное.
Заранее Благодарствую!
Код
Sub УдалениеСтрокПоУсловию2()
    Dim ra As Range, delra As Range, ТекстДляПоиска As String
    Application.ScreenUpdating = False    ' отключаем обновление экрана
 
    ТекстДляПоиска = "шт"    ' удаляем строки с таким текстом
 
    ' перебираем все строки в используемом диапазоне листа
    For Each ra In ActiveSheet.UsedRange.Rows
        ' если в строке найден искомый текст
        If ra.Find(ТекстДляПоиска, , xlValues, xlPart) Is Nothing Then
            ' добавляем строку в диапазон для удаления
            If delra Is Nothing Then Set delra = ra Else Set delra = Union(delra, ra)
        End If
    Next
    ' если подходящие строки найдены - удаляем их
    If Not delra Is Nothing Then delra.EntireRow.Delete
    
End Sub
Добавить 0 в ячейках где количество символов меньше 7, VBA макрос, по добавлению нуля в начало значения в ячейке
 
Нужно именно перебрать значения колонка уже заполнена значениями и тут нужна проверка если знаков в ячейке меньше 7 то добавить 0, если 7 и больше то ничего не делать. Количество строк всегда разное
Добавить 0 в ячейках где количество символов меньше 7, VBA макрос, по добавлению нуля в начало значения в ячейке
 
Спасибо!
Добавить 0 в ячейках где количество символов меньше 7, VBA макрос, по добавлению нуля в начало значения в ячейке
 
Добрый день.

Может кто подскажет почему не работает данный кусок кода?

Суть кода: в ячейке обрезало нули вначале значения где номера начинаются с 0. нужно восстановить значения в колоне "A". Если в ячейке символов меньше 7 то нужно подставить к значению в начало "0" в ту же ячейку.
Код
Sub Ze()

LR = Cells(Rows.Count, 1).End(xlUp).Row
 
    For i = LR To 2 Step -1
            
       str_test = Cells(i, 1).Value = Right(String(7, "0") & str_test, 7)
          
        Next
    
End Sub
Изменено: lilo295 - 27.06.2023 15:08:38
Вытащить из ячеек только номер ТТН VBA, оставить в ячейках только номера ТТН VBA
 
Мой косяк, Msi2102 спасибо большое за помощь в решении задачи.
Вытащить из ячеек только номер ТТН VBA, оставить в ячейках только номера ТТН VBA
 
Прикрепляю файл пример.
Вытащить из ячеек только номер ТТН VBA, оставить в ячейках только номера ТТН VBA
 
Msi2102,  Почему-то данный код не хочет отрабатывать по всей колонке. только первую ячейку отрабатывает, а если указать точный диапазон, тогда работает (A1:A16).  Можно ли как-то сделать чтоб определялась последняя заполненная ячейка в колонке. Оно вроде есть в примере, но не работает.
Вытащить из ячеек только номер ТТН VBA, оставить в ячейках только номера ТТН VBA
 
Спасибо большое последний код подошел!
Вытащить из ячеек только номер ТТН VBA, оставить в ячейках только номера ТТН VBA
 
Я прошу прощения, не указал что надо именно VBA код, но не функция. Пытаюсь сделать обработку отчета. Можете написать код не функцией?
Вытащить из ячеек только номер ТТН VBA, оставить в ячейках только номера ТТН VBA
 
Добрый день.

Помогите пожалуйста средствами VBA в колонке "P" оставить в ячейках только номер ТТН.


Пример:
ячейка 1 - Приходная накладная 1906104ХФ от 12.04.2023
ячейка 2 - Приходная накладная 0523887ФЕ от 29.12.2022
Результат:
ячейка 1 - 1906104
ячейка 2 - 0523887

Внимание: главное чтоб еще нули не обрезало вначале номера.
Сбор данных из файлов excel в 1 файл VBA, Сбор данных из выбранной папки в 1 файл VBA
 
Добрый день.

Помогите в написании макроса.

Необходимо из нескольких файлов excel в которых находятся одинаковые таблицы с разными значениями собрать данные в 1 файл excel.
Вариант 1: осуществить поиск по строке №6  по названию ячейки и определить столбец и вставить данные с 7 строки и до конца со всех файлов в 1 файл и на один лист. Поиск колонок: Наименование, артикул, цвет и последующая вставка столбцов в 1 файл, поиск нужно произвести во всех файлах.

Заранее благодарствую!
Реверс даты и замена , символов Vba, Нужно реверсировать дату и заменить точки и запятые на "-"
 
Спасибо огромное! Оказалось проще, чем я думал. Ваш вариант подходит.
Код VBA для суммирования по нескольким условиям, Правка кода (сбор таблицы по нескольким условиям)
 
Может кто помочь с данной задачей?
Реверс даты и замена , символов Vba, Нужно реверсировать дату и заменить точки и запятые на "-"
 
Добрый день.
сделал импорт курсов валют, но не получается решить одну проблему.
в ссылке нужно указывать дату в формате "YYYY-MM-DD".

есть переменная d , в которую попадают данные из input ( в input нужно ввести человеку дату 02.01.2023)
нужно чтоб введенные данные преобразовались в в следующий формат 2023-01-02 и хранились в переменной d

желательно сделать замену следующих знаков ".", ",", "/" на "-"
заранее благодарствую!
Код VBA для суммирования по нескольким условиям, Правка кода (сбор таблицы по нескольким условиям)
 
Да, сейчас дополню. Спасибо за корректировку.
Код VBA для суммирования по нескольким условиям, Правка кода (сбор таблицы по нескольким условиям)
 
Добрый вечер.


Сразу извиняюсь за грязный код, так как я учусь VBA =)
Помогите пожалуйста, почему код не отрабатывает, но и не выдает ошибку, может кто знает в чем проблема и может подправить.

Суть кода в том, чтобы просуммировать 1 столбец, но если повторяются значения в нескольких столбцах, при этом если строки просумировались, а лишние удалились, в первом столбце через запятую сложить значения.
Файл прикрепил с кодом.


Пример: Есть таблица из 10 колонок, которая имеет одинаковые данные наименование, шк, артикул, но к примеру разное количество. Данную таблицу необходимо собрать, удалить дублирующийся строки и просуммировать нужный столбец. Но часто бывает так что таблицы могут быть разные и находить одинаковые строки нужно к примеру по двум колонкам, или трем и так далее. Есть таблица 10 колонок, десятая колонка - ее надо к примеру нужно суммировать (это input "SUMM1", суть в том чтобы через инпут возможно было указать какую колонку нужно суммировать).

переменная "SRAV" - определяет по скольким колонкам будет производиться сравнение, 2, 3 или более, от этого значения должно будет зависеть какой цикл нужно запускать , сопоставление по двум колонкам и суммирование в определенной, или по трем.
Переменные sravneni1,sravneni2,sravneni3 - нужны для того чтобы пользователь мог указать по каким колонкам нужно искать одинаковые значения и сравниваь.

вот цикл, который сам по себе отрабатывает хорошо без боксов.
Код
Application.ScreenUpdating = False
LR = Cells(Rows.Count, 1).End(xlUp).Row
 
For i = LR To 3 Step -1
    For j = i - 1 To 3 Step -1
     If Cells(i, 3).Value = Cells(j, 3).Value _
        And Cells(i, 6).Value = Cells(j, 6).Value _
                Then
        Cells(i, 5).Value = Cells(i, 5).Value + Cells(j, 5).Value
        Cells(i, 1).Value = Cells(i, 1).Value & "," & Cells(j, 1).Value
        Rows(j).Delete
     End If
    Next
Next
Application.ScreenUpdating = True
Данный код находит одинаковые строки в колонках 3 и 6 и суммирует колонку 5, а в колонке 1, складывает значения через запятую (к примеру порядковый номер строки).

ИТОГ: Необходимо сделать следующим образом:
Вывести инпут для пользователя и спросить в скольких столбцах будем искать одинаковые значения (по каким столбцам будем искать признаки для суммирования).

Если 2
          ТО Вывести 2 инпута, где я смогу ввести номера колонок в которых будет проводиться сравнение одинаковых строк (Суммирование будет происходить если в двух строках и двух колонках будут одинаковые значения)
                Вывести инпут в котором я смогу указать какую колонку нужно суммировать.
Если 3
          ТО Вывести 3 инпута, где я смогу ввести номера колонок в которых будет проводиться сравнение одинаковых строк
                Вывести инпут в котором я смогу указать какую колонку нужно суммировать.
Изменено: lilo295 - 24.01.2023 11:10:25
Вставка формулы в функцию VBA, Вставка формулы в функцию VBA и последующий вызов формулы через знак "="
 
Спасибо огромное за готовое решение!.

Эти формулы добавлю и постараюсь по аналогии сделать остальные.
Изменено: lilo295 - 28.12.2022 11:47:43
Вставка формулы в функцию VBA, Вставка формулы в функцию VBA и последующий вызов формулы через знак "="
 
Добрый день.

Подскажите пожалуйста каким образом можно вставить формулу в функцию?

Пример формул:
=СЖПРОБЕЛЫ(ПСТР(A1;НАЙТИ(" ";A1)+1;НАЙТИ(",";A1)-НАЙТИ(" ";A1)-1))  ' Вытащить слово между двумя знаками пример между скобками.
=СЖПРОБЕЛЫ(ПРАВБ(ПОДСТАВИТЬ(A9;" ";ПОВТОР(" ";99));99))        ' Оставить слово после последнего пробела

Идея такая, у меня есть txt файл с сложными формулами, которые иногда нужны в работе. Вот задумался, реально ли их перенести в пользовательские формулы, чтобы можно было вызывать эти формулы через знак равно?

Буду благодарен если, кто сталкивался с таким, покажет хотя бы пример.

Заранее спасибо!
Сбор данных из txt файлов VBA, Добавить данные в столбцы из txt файлов в excel VBA
 
Спасибо большое! Последние 2 варианта рабочие!
Буду пробовать на практике теперь.
Сбор данных из txt файлов VBA, Добавить данные в столбцы из txt файлов в excel VBA
 
Цитата
написал:
Доброго времени, вариант:
Попробовал с 6 txt файлами. Не работает =(
Сбор данных из txt файлов VBA, Добавить данные в столбцы из txt файлов в excel VBA
 
Добрый день.

Помогите решить задачку, на просторах интернета не смог найти нужный вариант.

Нужно собрать данные из нескольких txt файлов следующим образом.

к примеру в папке 2 txt файла в каждом по 5 строк.
Нужно каждую строку из одного txt файла поместить в разные столбцы, следующий файл сделать тоже самое но с новой строки.

В результате должен получиться excel файл с заполненными 5 столбцами и двумя строками строчками.

Строк в файлах может быть разное количество, файлов в папке может быть разное количество.

Пример прилагаю
Поиск значений и копирование столбцов на новый лист VBA, VBA поиск по нескольким условиям и копирование столбцов
 
Цитата
написал:
см. файлP.S. - Поиск "артикул" с вариантом перебора из двух вариантов - кто должен придумывать эти варианты? Мы или вы?- Поиск "цена" с вариантом перебора из двух вариантов - кто должен придумывать эти варианты? Мы или вы?Допилите предложенный вариант под свои варианты. Для просмотра макроса нажмите в файле Alt+F11

Прикрепленные файлы
Копируем столбцы.xlsm  (24.6 КБ)

Изменено: New  - 31.03.2022 04:02:37
Добрый день. Спасибо большое сейчас посмотрю.
Не писал варианты, так как сам проставлю нужные варианты перебора и количество переборов. Спасибо огромное за помощь.
Поиск значений и копирование столбцов на новый лист VBA, VBA поиск по нескольким условиям и копирование столбцов
 
Добрый вечер!
может кто может помочь с написанием куска кода.
задача следующая:
есть прайс с множеством столбцов которые соответственно подписаны, из него необходимо перенести на новый лист 3 столбца наименование, артикул, цена.
логика:
1. поиск слова в диапазоне 1-10 строка.
поиск "наименование", или "название". Если найдено совпадение, то определить столбец, создать новый лист и скопировать на новый лист в столбец А;

то же самое и с остальными столбцами, только копирование на уже существующий лист на котором внесено наименование.

2. Поиск "артикул" с вариантом перебора из двух вариантов и копирование на другой лист в столбец B.

3. Поиск "цена" с вариантом перебора из двух вариантов и копирование на другой лист в столбец С.

заранее огромное спасибо!
TextBox ввод данных пользователя в код, VBA получить номер столбца из textBox
 
Спасибо большое! Работает замечательно!
TextBox ввод данных пользователя в код, VBA получить номер столбца из textBox
 
Можно и так, помогите пожалуйста встроить диалоговое окно(можно любое) =))
Заранее благодарствую.  
TextBox ввод данных пользователя в код, VBA получить номер столбца из textBox
 
Добрый вечер.

Помогите пожалуйста.
Есть код:
Код
Sub УдалитьСтроки()
    Dim r As Range
    Set r = Selection
    Dim y As Long
    For y = r.Row + r.Rows.Count - 1 To r.Row Step -1
        If Cells(y, 8).Value = "" Then
            Rows(y).Delete
        End If
    Next
End Sub
Нужно внедрить текст бокс в данный код.
Перед выполнением удаления строк вывести форму с вводом цифры (номер столбца) и вставить в код.
Пример:
Укажите номер столбца
при вводе номер столбца должен изменяться в коде.

На данный момент нужно постоянно лазить в макрос и изменять номер столбца.

Заранее Благодарствую!
Удаление ненужных строк с листа, обработка листа (удалить ненужные строки и оставить только строки с наименованием)
 
Добрый день.

Помогите пожалуйста, есть файл накладная, в нем целая куча ненужных строк, как можно сформировать на этом листе, или на другом только строки с товарами, а все остальное удалить.
Прикрепил пример . В файле указаны позиции красных как пример строки , которые нужно оставить, а остальные удалить. и так в файле строк может быть как 10 так и 200.

Заранее благодарствую!
Изменено: lilo295 - 27.11.2019 14:24:41 (забыл добавить пример)
Страницы: 1 2 След.
Наверх