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

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 117 След.
Создание нескольких умных таблиц с определенным кол-м строк с помощью макроса
 
См. файл
Написать Макрос для Excel
 
ТС пропал.
Изменено: New - 23.05.2022 00:16:53
Написать Макрос для Excel
 
Пишу в ЛС (в личные сообщения)
P.S. у вас макрос в файле "Обработка остатков" - запаролен
Изменено: New - 22.05.2022 00:58:47
Удаление и замена символов в строке, Последнюю точку заменить на запятую, остальные точки удалить. Задать числовой формат с разделителями групп разрядов.
 
для макроса - лучше приложите пример в файле Excel (дайте хотя бы 5-10 разных чисел в примере)
P.S. Вроде, недавно была такая тема по замене точек в числах на форуме... А-а-а, вот она, не подойдёт вам?
https://www.planetaexcel.ru/forum/index.php?PAGE_NAME=read&FID=1&TID=147784
Изменено: New - 20.05.2022 01:29:44
Перенести, если больше 0, Создание спецификации
 
Может как-то так?
=ЕСЛИ(ИЛИ(РАСЧЕТ!E12>0;ЕПУСТО(РАСЧЕТ!E12));РАСЧЕТ!C12)
Вытащить текст из строчки, вытащить часть текста из строки
 
Ігор Гончаренко, ))) так и знал, что кто-нибудь так отреагирует )
P.S. Чтобы формулы писать надо мозг напрягать, а вот при написании макросов мозг не нужно напрягать  )
Изменено: New - 19.05.2022 22:48:15
Вытащить текст из строчки, вытащить часть текста из строки
 
=ПСТР(A1;НАЙТИ(":";A1)+2;НАЙТИ("(";A1;НАЙТИ(":";A1))-НАЙТИ(":";A1)-3)
Некорректное отображение 20-значных чисел
 
Сам не пробовал, но попробуйте так, вдруг получится
Код
If Sheets("Оплата").Range("e" & i).Value = "р/с" Then
   Range("e" & i).NumberFormat = "@"
   Range("e" & i).Value = Application.IfError(Application.VLookup(Sheets("Оплата").Range("F" & i), Sheets("Начисления").Range("H:N"), 7, 0), "р/с")
End If
Изменено: New - 19.05.2022 21:11:22
Соединить 2 списка, как сопоставить номер и действия пользователя и его локацию
 
нуу, во-первых, у вас не Excel, а Google таблица - это разные программы. Во-вторых, я это сделал в Excel с помощью Сводной таблицы (в Excel это так - поставить курсор на любую ячейку в таблице - меню Вставка - Сводная таблица - далее мышкой перетащить нужные столбцы в нужные места и всё готово)
Соединить 2 списка, как сопоставить номер и действия пользователя и его локацию
 
на форум можно прикладывать свои файлы Excel. Вам точно формулу нужно? Может Сводная таблица подойдёт?
Изменено: New - 18.05.2022 01:49:52
Удалить текст после набора символов, где цифры различные
 
Код
Function DelCount(s) As String
    Dim re As Object
    Set re = CreateObject("VBScript.RegExp")
    re.Pattern = ", \d+шт.+"
    If re.test(s) Then
        DelCount = re.Replace(s, "")
    Else
        DelCount = s
    End If
End Function
Изменено: New - 17.05.2022 22:48:01
Дублирование строки под нужное условие, Производит дублирование всей строки, находит под условие
 
Код
Sub Дублирование_строки()
    Dim FindWord As String, ReplaceWord As String, Rng As Range, firstAddres As String
    
    FindWord = Application.InputBox("Какое слово найти в 3-м столбце?", "Поиск слова")
    If FindWord = Empty Then Exit Sub
    ReplaceWord = Application.InputBox("На какое слово заменить?", "Поиск слова")
    If ReplaceWord = Empty Then Exit Sub
    
    With ActiveSheet
        Set Rng = .Columns(3).Find(FindWord, , xlFormulas, xlWhole) 'xlWhole -ячейка целиком (xlPart - часть ячейки)
        If Rng Is Nothing Then
            MsgBox "Слово '" & FindWord & "' не найдено в 3-м столбце!", vbExclamation, "Внимание"
            Exit Sub
        End If
        firstAddres = Rng.Address
        Do
            .Rows(Rng.Row).Copy
            .Rows(Rng.Row + 1).Insert Shift:=xlDown
            .Cells(Rng.Row + 1, 3) = ReplaceWord
            Set Rng = .Columns(3).FindNext(Rng)
        Loop Until Rng.Address = firstAddres
    End With
    MsgBox "Сделано!", vbInformation, "Конец"
End Sub
Доработать, переделать существующий код VBA в Exele.
 
в работе
Выполнено, оплачено
Изменено: New - 17.05.2022 22:28:10
Доработать, переделать существующий код VBA в Exele.
 
Msi2102, кстати, да. Какие-то заказчики пошли в последнее время, сами не знают чего им нужно)) То напишите мне что-нибудь, то напишите мне макрос под любую таблицу, то вот вам примерное ТЗ ) То потом пишут - тема закрыта...  Эх... ))
Изменено: New - 16.05.2022 19:09:13
Доработать, переделать существующий код VBA в Exele.
 
ничего не понятно, но очень интересно... без файла Excel. Напишу вам свою почту в личные сообщения
Поиск и сравнение данных на разных листах с копированием информации на другой файл/лист, Поиск и сравнение данных на разных листах с копированием информации на другой файл/лист
 
трудно сказать, возможно коды чем-то отличаются между Лист1 и Лист2. Если сможете дать посмотреть ваши файлы, то я могу вам в личное сообщение написать свою почту, вы туда вышлете ваши файлы (или обрезанные ваши файлы), а я уже посмотрю, что с ними не так.
Поиск и сравнение данных на разных листах с копированием информации на другой файл/лист, Поиск и сравнение данных на разных листах с копированием информации на другой файл/лист
 
Timur Primbetov, см. файл
Изменено: New - 16.05.2022 00:20:57
Прошу помочь "перенести" макрос из одного файла в другой
 
Пусть директор откроет для себя Power BI, там, вроде, можно разные dashboard'ы делать
Изменено: New - 15.05.2022 02:58:38
VBA. Userform.ListBox - ошибка вылета Excel и "Out of memory", Урок курса VBA, в котором автор через Userform удаляет записи из умной таблицы, что приводит к вылету всего Excel
 
Я смотрел только код удаления строки, т.к. вы на неё жаловались. В другую форму я не заходил
Объясню так - весь ваш код VBA от курса VBA очень сырой. В него нужно добавить ещё кучу проверок для нормальной работы с умной таблицей.
Если коротко - если  допилить до ума ваш код, то он будет работать, вам показали небольшой пример работы с таблицей, а дальше, наверное, либо вы сами должны доработать этот код, либо доработка этого кода будет в следующих уроках вашего курса VBA.
P.S. Работайте с обычными ячейками на листе, без умной таблицы. Так вам будет проще
Изменено: New - 14.05.2022 17:47:54
VBA. Userform.ListBox - ошибка вылета Excel и "Out of memory", Урок курса VBA, в котором автор через Userform удаляет записи из умной таблицы, что приводит к вылету всего Excel
 
Попробуйте так (добавил 1 строку с русским описанием) - таблица в Listbox не обновлялась после удаления, т.е. с листа данные удалялись, а в ListBox нет

Код
Private Sub btDelete_Click()
    Dim DeleteRec As Long
    Dim CheckDelete As VbMsgBoxResult
    
    DeleteRec = Me.LbEditCuct.ListIndex
    
    If DeleteRec = -1 Then
        MsgBox "No record has been selected for deletion", vbExclamation, "Delete Record?"
        Exit Sub
    Else
        CheckDelete = MsgBox("Are you sure you want to delere this record from the Master Data?", _
            vbExclamation + vbYesNo + vbDefaultButton1, "Delete Record?")
        If CheckDelete = vbNo Then Exit Sub
        DeleteRec = DeleteRec + 1
        shMaster.ListObjects("CustomerTable").ListRows(DeleteRec).Delete
        'обновляем таблицу в ListBox после удаления
        Me.LbEditCuct.RowSource = "CustomerTable"
    End If
End Sub
Изменено: New - 14.05.2022 15:56:51
Копирование определенных столбцов из разных книг в одну книгу., Копирование столбцов
 
Максим Моисеев, добрый день.
1. К сожалению, написать макрос без примера файла (-ов) сложно. Макрос не знает из каких книг брать данные - нужно произвести поиск по диску С, найти любые файлы Excel и из них взять данные?
2. 12 листов с любым названием или с определённым? А если в каком-то файле будет 13 листов, что с ним делать?
3. К сожалению, в макросе нельзя прописать - скопируй определённые столбцы. Программирование это более точная наука. Обычно у столбцов есть названия A,B,C (ну, или порядковые номера столбцов - 2, 7, 15)
3. Столбцы нельзя скопировать начиная со следующей свободной строки. Столбцы это вертикальные данные, строки это в горизонтальные данные. Это строки можно скопировать со следующей свободной строки, а столбцы можно скопировать начиная со следующего свободного столбца.
Короче, для написания макроса нужно ещё куча дополнительной информации (какие файлы, из какой папки, нужен ли диалог выбора папки или из всех файлов рядом находящихся с макросом, какие именно столбцы копировать, в какую именно книгу копировать - в файл с макросом или всегда нужно создавать новый файл и туда копировать столбцы из файлов, что надо делать если листов меньше 12 или больше 12 в тех файлах)
Изменено: New - 14.05.2022 15:42:28
использование VLookup при условии if, Добрый вечер, подскажите пожалуйста, имеется код, который запускается при активации листа. По данному коду пересчитывается весь диапазон на листе Оплата, как изменить код, чтобы расчет шел только по тем строкам, где в листе «Оплата» в столбце «Е» условие
 
может как-то так?
Код
Private Sub Worksheet_Activate()
    Dim LastRow As Long, i As Long
       
    With Sheets("Оплата")
        LastRow = .Cells(.Rows.Count, 1).End(xlUp).Row
        For i = 3 To LastRow
            .Range("E" & i).value = Application.IfError(Application.VLookup(.Range("F" & i), Sheets("Начисления").Range("H2:N10000"), 7, 0), .Range("E" & i).value)
        Next
    End With
End Sub
использование VLookup при условии if, Добрый вечер, подскажите пожалуйста, имеется код, который запускается при активации листа. По данному коду пересчитывается весь диапазон на листе Оплата, как изменить код, чтобы расчет шел только по тем строкам, где в листе «Оплата» в столбце «Е» условие
 
End Sab - это, конечно, хорошо (лучше Sub), но ещё лучше небольшой пример в файле Excel (не рабочий ваш файл с секретной информацией, а пример с любыми данными). А так по вашему описанию в код нужно добавить
Код
If Sheets("Оплата").Range("E" & i).Value = "ФИО" Then
'тут ваша формула
End If

А может там вообще не ВПР (VLookup) нужен, а СУММЕСЛИМН(), в параметрах которого прописать условие на наличие ФИО
Изменено: New - 14.05.2022 01:41:59
Сводная таблица по нескольким диапазонам данных, Сводная таблица по нескольким диапазонам данных
 
Дмитрий(The_Prist) Щербаков, +1
UserForm для умной таблицы, Изменения данных в умной таблице по условиям
 
Цитата
Pavel Ginoris написал:
Если проблема только в отсутствии файла я вам могу набросать
Был бы вам очень признателен за это.

P.S. Для понимания работы по платным заказам - если от вас есть файл с таблицей и макрос будет её правильно заполнять по вашему ТЗ, то заказ считается выполненным и должен быть оплачен. Как вы готовый макрос будете потом адаптировать под вашу другую таблицу - это будут уже ваши проблемы, а не того, кто вам писал макрос. Ответ будет один - макрос работает с той таблицей, которую вы прислали для написания макроса? Ответ - Да. Тогда оплатите работу. Дальше уже ваши проблемы, почему данный макрос не работает с другой таблицей.
А вы хотите так - напишите мне макрос под любую таблицу, а я его уже потом сам изменю под свою таблицу. У меня вопрос - а получится ли у вас его изменить под свою таблицу? А если у вас не получится, то и денег за выполненную работу вы не оплатите? Так дела не делаются. В идеале от вас нужно подробное техническое задание (ТЗ) и по возможности формат таблицы, под которую будет писаться макрос. Нет технического задания, ну тогда хотя бы нужна таблица и словесное описание что куда и как макрос должен работать.
Давайте объясню на примере строительства дома. Сейчас вы говорите - постройте мне дом! Вас спрашивают - а какой именно дом? Вы говорите - ну, это не важно, стройте любой, я потом под себя его переделаю. Ок, вам построят хороший тёплый дом в 1 этаж 100 квадратных метров, 2 спальни, 2 санузла, 8 окон и скажут - вот ваш дом, оплатите. А вы ответите - эээ, неее, так не подойдёт, оплачивать не буду. Я не смогу этот дом перестроить в 24-х этажный дом, с гаражом под домом, с арками, бассейном и вертолётной площадкой на крыше, поэтому оплачивать работу не буду. Так в вашем задании (ТЗ) и не было сказано ничего, что это будет 24-х этажный дом, поэтому мы построили с фундаментом в 1.5 метра, а для 24-э этажного дома фундамент должен быть 10 метров, котлован под подземный гараж вы тоже не просили, бассейн вы тоже не обговаривали и т.д. и т.д. и т.д. Макрос - это не искусственный интеллект, это набор запрограммированных действий.
Изменено: New - 14.05.2022 01:01:58
UserForm для умной таблицы, Изменения данных в умной таблице по условиям
 
ТС сообщил, что файла с данными нет. Примеры на картинках в теме.
К сожалению, я макросы без файла/таблицы не умею писать (иначе будет - а у меня этот столбец по-другому называется, а у меня этот столбец на другом листе, а у меня этот столбец 2-й, а не 5-й, а мне такая таблица не подходит и т.д.). Может кто другой поможет.
Нумерация уникальных значений по 2м и более столбцам
 
ольга, на форум можно прикладывать файлы Excel в качестве примера
Макрос для выведения списка уникальных значений из 2 диапазонов на другой лист (при наличии пустых строк)
 
Код
Sub Test()
Dim arrData As Variant, LastRow As Long, i As Long, arrOut As Variant, n As Long, Dict As Object

    'выбираем уникальные из столбца H
    Set Dict = CreateObject("Scripting.Dictionary")
    With Worksheets("Лист1")
        'определяем последнюю ячейку в столбце
        LastRow = .Cells(.Rows.Count, "H").End(xlUp).Row
        'берём в массив все данные из столбца H
        arrData = .Range(.Cells(1, "H"), .Cells(LastRow, "H")).Value
    End With
    
    'создаём пустой массив под будущие результаты
    ReDim arrOut(1 To UBound(arrData), 1 To 1)
    n = 0
    'заносим в Словарь только уникальные значения
    For i = LBound(arrData) To UBound(arrData)
        If Not Dict.exists(arrData(i, 1)) Then
            Dict.Add arrData(i, 1), 0&
            n = n + 1
            arrOut(n, 1) = arrData(i, 1)
        End If
    Next i
    'выгружаем массив arrOut на Лист2
    With Worksheets("Лист2")
        'очищаем столбец G
        .Columns("G:G").Clear
        'всему столбцу присваиваем текстовый формат (чтобы не потерять нули перед цифрами)
        .Columns("G:G").NumberFormat = "@"
        .Range("G1").Resize(UBound(arrOut, 1), 1) = arrOut
    End With
    
    'выбираем уникальные из столбца R
    'всё тоже самое что и выше, только нужно заменить H на R и G на L
    '...
End Sub
Изменено: New - 13.05.2022 14:59:18
Разбить на листы с названием
 
Alennka,
1. у вас очень плохой пример файла - просто пустые ячейки. Вы бы хотя бы единички проставили во все ячейки таблиц.
2. как макрос сможет находить ваши таблицы на листах (да даже на одном листе)? Это человек взглядом может определить таблицу на листе и её границы, а макросу нужны более конкретные характеристики для определения границ таблиц на листах. Сейчас можно определить таблицы только цвету - где-то ячейки тёмно-коричневые, где-то серые, где-то жёлтые, где-то белые... Для написания макроса нужны чёткие характеристики. Например, все таблицы содержат слово "Название" в шапке таблицы - да, тогда можно макросом найти 200 слов "Название" на каждом листе и уже от этого слова искать границы таблицы. А сейчас это просто какие-то закрашенные цветом ячейки. Макрос не сможет найти эти таблицы на листе. Макрос - это не искусственный интеллект (сделай мне хорошо). Макрос - это последовательность действий (иди туда, найти то-то, скопируй в новый файл, сохрани файл, повтори всё сначала)
Изменено: New - 13.05.2022 01:41:42
UserForm для умной таблицы, Изменения данных в умной таблице по условиям
 
я пока не очень понял задание, но давайте попробуем сделать. Я напишу вам в личные сообщения свою почту для связи
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 117 След.
Наверх