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

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 42 След.
Выделение любого текста цветом в выделенном диапазоне, добавить возможность выбора цвета для выделения конкретного текста
 
Цитата
WS27 написал:
а как это реализовать?
Это зависит от того какие цели Вы преследуете, как у Вас расположены данные, как Вы их выделяете (весь столбец или нет). Если данные расположены всегда в одном столбце или строке, то достаточно найти последнюю ячейку. Если Вы выделяете диапазон (не целый столбец), то можно Selection. Если для поиска выделяете целый столбец или строку, то попробуйте так:
Код
For Each cell In Application.Intersect(Selection, ActiveSheet.Cells.SpecialCells(xlCellTypeConstants, xlTextValues))
Выделение любого текста цветом в выделенном диапазоне, добавить возможность выбора цвета для выделения конкретного текста
 
Цитата
Александр Моторин написал:
Без формы
Слишком большой диапазон цветов, если будут дальше автоматизировать, то могут быть проблемы с оттенками  :D  
Выделение любого текста цветом в выделенном диапазоне, добавить возможность выбора цвета для выделения конкретного текста
 
Цитата
WS27 написал:
как можно сделать чтобы выделял абсолютно все
Заменить макрос, примерно на такой как в файле (добавил оба варианта с формой и без, как писал Александр Моторин)
Цитата
WS27 написал:
выделяю необходимый мне диапазон
Если нужно выделенный диапазон то
Цитата
WS27 написал:
For Each c In Cells.SpecialCells(xlCellTypeConstants, xlTextValues)
Немного не подойдет
Изменено: Msi2102 - 22.09.2021 10:56:11
Вставить строки между диапазонами строк с одинаковыми датами
 
Гарик Айвазян, можно вставить макросом.
Хотите узнать больше почитайте ПРАВИЛА форума особенно п.2.3
Выделение любого текста цветом в выделенном диапазоне, добавить возможность выбора цвета для выделения конкретного текста
 
Можно так, только учтите, что Ваш макрос находит, только первое вхождение  
Изменено: Msi2102 - 22.09.2021 08:12:56
Макрос анализ данных из закрытой книги
 
Почитайте ЗДЕСЬ
сравнение двух дат в переходящих сутках
 
Цитата
lotos1908 написал:
Окно поставки с 20:00:00 до 08:00:00. Машина прибыла в 20:37:00.
Добавьте дату ко времени
Окно поставки с 15.09.2021 20:00:00 до 16.09.2021 08:00:00. Машина прибыла в 15.09.2021 20:37:00
Принятнуть значения сразу по нескольким аргументам
 
Попробуйте так, в ячейку B2 и протянуть вниз
Код
=ИНДЕКС(Лист1!$B$2:$E$4;ПОИСКПОЗ(A2;Лист1!$A$2:$A$4;0);ПОИСКПОЗ($B$1;Лист1!$B$1:$E$1;0))
Изменено: Msi2102 - 15.09.2021 13:39:12
Вычисление формулы в ячейке, собранной из чисел, которые вытянуты из текста
 
Можно ещё с помощью EXCEL 4.0. Почитать можно ЗДЕСЬ
Хотя, наверное не подойдет, просили без макросов.
Подсчет отработанных смен по критериям
 
Цитата
Ігор Гончаренко написал:
не нужно извинятся. нам по кайфу по 40 раз решать одну и туже задачу
Игорь к чему столько негатива, добрее надо быть  :D
Вариант UDF
Код
Public Function RegSum(Rn As Range, Rn1 As Range)
Dim n As Long, i As Long, arr1 As Variant, arr2 As Variant
arr1 = Rn
arr2 = Rn1
s = 0
Set RegExp = CreateObject("VBScript.RegExp")
RegExp.Pattern = "\d+([\.|,]\d+)?"
RegExp.Global = True
For n = LBound(arr1, 2) To UBound(arr1, 2)
    If arr2(1, n) = True And RegExp.Test(arr1(1, n)) Then
        Set objMatches = RegExp.Execute(arr1(1, n))
        For i = 0 To objMatches.Count - 1
            s = s + CDbl(Replace(objMatches.Item(i).Value, ".", ","))
        Next i
    End If
Next n
RegSum = s
End Function
PS наверное не правильно понял, что нужно было
Изменено: Msi2102 - 15.09.2021 08:32:49
Подсчет количества повторов из списка комбинаций
 
Попробовал реализовать на PQ.
Не совсем красиво, но получилось, если конечно правильно понял.
Изменено: Msi2102 - 14.09.2021 16:05:37
Сравнить данные в таблице и найти отличия
 
Не уверен, что правильно понял Ваш вопрос, но если у Вас данные совпадают и Вам важна позиция этих данных, то тогда достаточно просто
=C4=J4
и протянуть вправо и вниз, где ЛОЖЬ там не совпадение.
Если у Вас данные совпадают, но идут в перемешку то вначале ВПР и также сравнить:
=C4=ВПР($C4;$J$4:$M$39;СТОЛБЕЦ(A$1);0)
Но всё таки думаю, я неправильно Вас понял
Изменено: Msi2102 - 14.09.2021 07:15:41
Сравнить данные в таблице и найти отличия
 
Вы бы вместо скриншота небольшой файлик с примером приложили, в формате EXCEL, как это в ПРАВИЛАХ описано
Макрос/Код по копирование информации с одного листа с переодичностью 7 строк на другой лист в формат таблицы под импорт.
 
А зачем макрос? Выделяйте, жмите копировать, выделяйте ячейку куда вставить и вставить --> транспонировать
Упорядованичение разрозненных значений в таблице, Приведение данных по объектам к единому виду
 
Попробуйте так
Код
Sub RegExp1()
Set RegExp = CreateObject("VBScript.RegExp")
RegExp.Global = True: RegExp.Pattern = "(\d+\.\s)?\d+\.\d+\.\s": RegExp.IgnoreCase = True
For Each cel1 In Selection
    cel1.Value = RegExp.Replace(cel1.Value, "")
Next
End Sub
Изменено: Msi2102 - 10.09.2021 14:07:32
Упорядованичение разрозненных значений в таблице, Приведение данных по объектам к единому виду
 
Zagadka, А это точно не персональные данные в Вашем файле
VBA. #Н/Д При замене формул на значения
 
Попробуйте так
Код
Sub UdalForm()
Dim ws As Worksheet
Dim a As Range, b1 As Range, b2 As Range, b3 As Range, b4 As Range, b5 As Range, b6 As Range, b7 As Range, b8 As Range
  
        For Each ws In ActiveWorkbook.Worksheets
            If ws.Name <> "Обновление" And ws.Name <> "Summary" Then
              
        ws.Activate
          
            Range("A1:E" & Cells(Rows.Count, 5).End(xlUp).Row).Value = Range("A1:E" & Cells(Rows.Count, 5).End(xlUp).Row).Value
            Range("G1:R" & Cells(Rows.Count, 18).End(xlUp).Row).Value = Range("G1:R" & Cells(Rows.Count, 18).End(xlUp).Row).Value
            Range("T1:T" & Cells(Rows.Count, 21).End(xlUp).Row).Value = Range("T1:T" & Cells(Rows.Count, 21).End(xlUp).Row).Value
            Range("W1:AB" & Cells(Rows.Count, 28).End(xlUp).Row).Value = Range("W1:AB" & Cells(Rows.Count, 28).End(xlUp).Row).Value
            Range("AE1:AF" & Cells(Rows.Count, 32).End(xlUp).Row).Value = Range("AE1:AF" & Cells(Rows.Count, 32).End(xlUp).Row).Value
            Range("AI1:AJ" & Cells(Rows.Count, 36).End(xlUp).Row).Value = Range("AI1:AJ" & Cells(Rows.Count, 36).End(xlUp).Row).Value
            Range("AM1:AN" & Cells(Rows.Count, 40).End(xlUp).Row).Value = Range("AM1:AN" & Cells(Rows.Count, 40).End(xlUp).Row).Value
            Range("AP1:AT" & Cells(Rows.Count, 46).End(xlUp).Row).Value = Range("AP1:AT" & Cells(Rows.Count, 46).End(xlUp).Row).Value

    End If
    Next ws
      
End Sub
Объединение нескольких таблиц и суммировать значения одинаковых наименований
 
Делаем одинаковыми имена столбцов (хотя это не обязательно). Выделяем ячейку в которую нужно вставить результат. Вкладка "Данные" --> "Работа с данными" --> "Консолидация". В открывшемся окне: "Функция" - Сумма, "Ссылка" - выдираем первую таблицу нажимаем "Добавить" (если наименования столбцов одинаковые, то вместе с наименованием), выбираем вторую таблицу нажимаем "Добавить", "Использовать в качестве имен" - ставим обе галочки, если наименование столбцов одинаковые, в противном случае только "Значения левого столбца". Жмем "ОК"
Или Power Query
Код
let
    f=(x)=>Excel.CurrentWorkbook(){[Name=x]}[Content],
    a = Table.TransformColumnTypes(f("Таблица1"),{{"Название", type text}, {"Сумма", type number}}),
    b = Table.TransformColumnTypes(f("Таблица2"),{{"Название", type text}, {"Сумма", type number}}),
    c = Table.Combine({a, b}),
    d = Table.Group(c, {"Название"}, {{"Сумма", each List.Sum([Сумма]), type number}})
in
    d
Ну и куда без макроса
Код
Sub Макрос1()
Dim arr1 As Variant, arr2 As Variant, arr3 As Variant, n As Integer, d
arr1 = Range("F8:G18")
arr2 = Range("F22:G34")
Set Dict = CreateObject("Scripting.Dictionary")
For n = 1 To UBound(arr1)
    If arr1(n, 1) <> "" And arr1(n, 1) <> "Название" Then
        If Not Dict.Exists(arr1(n, 1)) Then
            Dict.Add arr1(n, 1), CStr(arr1(n, 2))
        Else
            Dict.Item(arr1(n, 1)) = CStr(CDbl(Dict.Item(arr1(n, 1))) + arr1(n, 2))
        End If
    End If
Next n
For n = 1 To UBound(arr2)
    If arr2(n, 1) <> "" And arr2(n, 1) <> "Название" Then
        If Not Dict.Exists(arr2(n, 1)) Then
            Dict.Add arr2(n, 1), CStr(arr2(n, 2))
        Else
            Dict.Item(arr2(n, 1)) = CStr(CDbl(Dict.Item(arr2(n, 1))) + arr2(n, 2))
        End If
    End If
Next n
ReDim arr3(1 To Dict.Count, 1 To 2)
n = 0
For Each d In Dict
    n = n + 1
    arr3(n, 1) = d
    arr3(n, 2) = Dict.Item(d)
Next d
Range("I8:J" & n + 7) = arr3
End Sub
Изменено: Msi2102 - 08.09.2021 13:05:14
Расчет Z- счета макросом или формулой
 
Упс, точно, прошу прощения
Расчет Z- счета макросом или формулой
 
БМВ, наверное лучше так
=SUMPRODUCT(--(B1:B7<>B2:B8))-1
Изменено: Msi2102 - 08.09.2021 09:28:28
Удалить точки в маске даты через Backspace. VBA
 
Попробуйте так
Количество уникальных значений если включен фильтр
 
New, спасибо, поправил. Вроде копировал из файла, может и там слепились, утром проверю :)  
Найти массив, где содержатся нулевые строки
 
Цитата
Jack Famous написал:
если бы хоть одна живая душа на этой Планете знала, что вам нужно
ну слава КПСС, а то я думал один ничего не понимаю, уже комплексовать начал  :D  
Как автоматически из формы из combobox и Label разнести по ячейкам?
 
Можно
Код
Private Sub ComboBox3_Change()
 Select Case ComboBox3.Value
    Case "Яблоко"
        Me.Label24.Caption = "Фрукт"
    Case "Гвоздь"
        Me.Label24.Caption = "Металл"
    Case "Огурец"
        Me.Label24.Caption = "Овощ"
    End Select
    Worksheets("Лист3").Range("E15") = ComboBox3.Value
    Worksheets("Лист3").Range("G17") = Me.Label24.Caption
    Me.Label31.Caption = Worksheets("Лист3").Range("G19")
End Sub
Изменено: Msi2102 - 03.09.2021 13:56:18
Как автоматически из формы из combobox и Label разнести по ячейкам?
 
Попробуйте так
Код
Private Sub ComboBox3_Change()
 Select Case ComboBox3.Value
    Case "Яблоко"
        Me.Label24.Caption = "Фрукт"
    Case "Гвоздь"
        Me.Label24.Caption = "Металл"
    Case "Огурец"
        Me.Label24.Caption = "Овощ"
    End Select
    Worksheets("Лист3").Range("E15") = ComboBox3.Value
    Worksheets("Лист3").Range("G17") = Me.Label24.Caption
    
End Sub
Найти массив, где содержатся нулевые строки
 
Ігор Гончаренко, а слабо догадаться :D , или по Вашему всё должен делать ТС
Найти массив, где содержатся нулевые строки
 
А по какому принципу остались именно эти три строки
Изменено: Msi2102 - 03.09.2021 12:59:10
Поиск кода в другой базе, если в первой данные не найдены
 
Может так
Код
=ИНДЕКС($R$3:$R$17;ЕСЛИОШИБКА(ПОИСКПОЗ(I3;$Q$3:$Q$17;0);ПОИСКПОЗ(H3;$Q$3:$Q$17;0)))
Подсчет количества пересечение значений между собой по уникальным критериям
 
Вариант PQ
Код
let
    Источник = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    #"Измененный тип" = Table.TransformColumnTypes(Источник,{{"Сервисный центр", type text}, {"Номер телефона", type text}}),
    #"Добавлен индекс" = Table.AddIndexColumn(#"Измененный тип", "Индекс", 0, 1),
    #"Сортированные строки" = Table.Sort(#"Добавлен индекс",{{"Номер телефона", Order.Ascending}, {"Сервисный центр", Order.Ascending}}),
    #"Сгруппированные строки" = Table.Group(#"Сортированные строки", {"Сервисный центр", "Номер телефона"}, {{"Количество", each _, type table}}),
    #"Сгруппированные строки1" = Table.Group(#"Сгруппированные строки", {"Номер телефона"}, {{"Количество", each _, type table}}),
    #"Добавлен пользовательский объект" = Table.AddColumn(#"Сгруппированные строки1", "Пользовательская", each Table.AddIndexColumn([Количество],"№ в группе",1,1)),
    #"Удаленные столбцы" = Table.RemoveColumns(#"Добавлен пользовательский объект",{"Количество"}),
    #"Развернутый элемент Пользовательская" = Table.ExpandTableColumn(#"Удаленные столбцы", "Пользовательская", {"Сервисный центр", "Количество", "№ в группе"}, {"Сервисный центр", "Количество", "№ в группе"}),
    #"Развернутый элемент Пользовательская.Количество" = Table.ExpandTableColumn(#"Развернутый элемент Пользовательская", "Количество", {"Индекс"}, {"Индекс"}),
    #"Сортированные строки1" = Table.Sort(#"Развернутый элемент Пользовательская.Количество",{{"Индекс", Order.Ascending}}),
    #"Другие удаленные столбцы" = Table.SelectColumns(#"Сортированные строки1",{"№ в группе"})
in
    #"Другие удаленные столбцы"
Изменено: Msi2102 - 03.09.2021 10:59:20
После внесения в ячейку даты автоматически ячейку другого столбца
 
В соседнюю ячейку от даты
Код
=ЕСЛИ(B6<>"";"есть";"нет")
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 42 След.
Наверх