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

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 97 След.
Макрос с формулами, Как прописать в макросе формулу, чтобы после его выполнения в ячейках уже был итог расчета, а не формула
 
mitya528,
в таком случае, советую разобраться с этим (добавил 1) и дальше собираться по кусочкам:
Код
Sub aaa()
lLastRow = ActiveSheet.Cells(Rows.Count, "A").End(xlUp).Row
For n = 4 To lLastRow
On Error Resume Next
ActiveSheet.Range("P" & n) = Round(Application.AverageIfs(ActiveSheet.Range("C" & n & ":O" & n), ActiveSheet.Range("C" & n & ":O" & n), ">0"), 1)
ActiveSheet.Range("R" & n) = Sheets("Лист2").Range("Y" & n) + Sheets("Лист2").Range("AB" & n)
Next
End Sub

Почитайте еще здесь
Изменено: evgeniygeo - 27.04.2024 14:00:53
Макрос с формулами, Как прописать в макросе формулу, чтобы после его выполнения в ячейках уже был итог расчета, а не формула
 
mitya528,
В чем цель замены формул на значения? Они долго обновляются?
Вы представляете, сколько всего хотите сделать чужими руками просто так?

для самого простого примера:
Код
Sub aaa()
lLastRow = ActiveSheet.Cells(Rows.Count, "A").End(xlUp).Row
For n = 4 To lLastRow
ActiveSheet.Range("R" & n) = Sheets("Лист2").Range("Y" & n) + Sheets("Лист2").Range("AB" & n)
Next
End Sub
Изменено: evgeniygeo - 27.04.2024 13:39:02
Написать макрос, макрос: напечатать файл и вместить всё в 1 лист.
 
Grayby,
почитайте здесь:
https://www.planetaexcel.ru/techniques/3/59/
А название темы надо бы сменить. Как предложение: Макрос для печати активного листа
Изменено: evgeniygeo - 27.04.2024 13:33:55
открытие файла docm, не получается открыть файл docm
 
eshot1,
я не знаю как Вы смотрите. Вот заберите готовый док без макросов:
https://transfiles.ru/f4uou
Удаление строк с отрицательным значением
 
nomad_a,
а "Total qty per pn" тоже должен пересчитаться?
как быть с теми "qty", где >1?
какое у этого "чуда" применение?
Изменено: evgeniygeo - 27.04.2024 09:19:27
Зачем сражаться за секунды выигрыша по скорости работы макроса?
 
Счастливчик,
в целом все просто:
1) Если задача разовая, то не стоит сильно заморачиваться по скорости (в разумных пределах). Такие задачи у меня сейчас часто появляются в связи с локализацией различных штук в компании
2) Если задача постоянная, то однозначно стоит бороться за скорость, но тоже нужно понимать, кто пишет код, т.к. трудозатраты могут быть не рациональными для этого.
Нанесение точек по координатам на рисунок карты на листе Excel, Требуется оффлайновый инструмент
 
deviceik,
можно сделать с помощью 3D Maps вообще без трудов или с Вашей картинкой на диаграмме, но подбирая каждое местоположение вручную.
Думаю, что сами понимаете за какой из вариантов коллеги возьмут гораздо больше.
открытие файла docm, не получается открыть файл docm
 
eshot1,
а у меня в 365 все ок)))
upd:
можете нажать "отобразить все знаки" или ctrl+*?
после этого выделяем весь тест ctrl+a, нажимаем ПКМ, выбираем шрифт, убираем галку "скрытый"
Изменено: evgeniygeo - 27.04.2024 06:24:46
открытие файла docm, не получается открыть файл docm
 
eshot1,
попробуйте:
https://transfiles.ru/rs4it
https://transfiles.ru/jezsi
Изменено: evgeniygeo - 26.04.2024 12:46:18
Быстрая очистка диапазона с данными (макрос), Оптимизация удаления (очистки) данных (макрос)
 
mitya528,
может быть в оригинальном файле есть макросы в модуле книги или модуле листов, которые тормозят процесс?
Заменить четвертый левый символ на другой
 
Anastasia_023,
Код
=ЛЕВСИМВ(A1; ДЛСТР(A1)-4) & "-" & ПРАВСИМВ(A1; 3)
Удаление строк в таблице от "Условие" до "Условие"
 
Эксель практик,
ну для начала можно вот так:
Код
Sub DuplicateFile()
    newPath = ThisWorkbook.Path & "\" & "Волгоградский дивизион.xls"
    ThisWorkbook.SaveCopyAs newPath
    Workbooks.Open newPath
    
    'удаляем строки
    
    ActiveWorkbook.Close True
End Sub

можно расплодить для 6 книг и придумать, как удалять не нужные строки
Изменено: evgeniygeo - 26.04.2024 11:25:00
Как учесть ежегодный плавающий период отпуска через формулу, При составлении ежедневного расписания на несколько лет необходимо учесть плавающий период отпуска через формулу
 
БМВ,
я бы наверное лучше один раз заполнил и заменил на значения
Как учесть ежегодный плавающий период отпуска через формулу, При составлении ежедневного расписания на несколько лет необходимо учесть плавающий период отпуска через формулу
 
Максим Исаев,
так наверное:
Код
=ЕСЛИ(И(C$1>=ИНДЕКС(Отпуск!$B$1:$B$74;ПОИСКПОЗ(ГОД(C$1);Отпуск!$A$1:$A$74;0));C$1<=ИНДЕКС(Отпуск!$K$1:$K$74;ПОИСКПОЗ(ГОД(C$1);Отпуск!$A$1:$A$74;0)));"";ЕСЛИ(B2="";ЕСЛИ(ПРОСМОТР(999999;$B2:B2)+1=21;1;ПРОСМОТР(999999;$B2:B2)+1);ЕСЛИ(B2+1=21;1;B2+1)))
Изменено: evgeniygeo - 26.04.2024 08:10:30
Как закрасить каждую новую строку в Excel, Как закрасить каждую новую строку в Excel
 
bahruzbahruz,
Код
=$F7<>$F6
Изменено: evgeniygeo - 25.04.2024 13:19:21
Быстрая очистка диапазона с данными (макрос), Оптимизация удаления (очистки) данных (макрос)
 
mitya528,
ну можно тупо:
Код
Range("P2:Z" & Cells(Rows.Count, 1).End(xlUp).Row + 1).ClearContents
Range("F2:M" & Cells(Rows.Count, 1).End(xlUp).Row + 1).ClearContents
Range("A2:C" & Cells(Rows.Count, 1).End(xlUp).Row + 1).ClearContents

или
Код
Set rngToClear = Union(Range("A2:C" & Cells(Rows.Count, 1).End(xlUp).Row + 1), _
                       Range("F2:M" & Cells(Rows.Count, 1).End(xlUp).Row + 1), _
                       Range("P2:Z" & Cells(Rows.Count, 1).End(xlUp).Row + 1))
rngToClear.ClearContents
Изменено: evgeniygeo - 25.04.2024 11:39:49
Книги по формулам Excel
 
KrutojBep,
почему не взять электронную у Николая? Мне кажется, там больше архив с примерами интересен.
Создать список из актуальных данных
 
madkechup,
на 365 и 2021:
Код
=ФИЛЬТР($A$2:$A$12;ЕСЛИОШИБКА($A$2:$A$12;"")<>"")

для более старых версий формула массива (вводить через ctrl+shift+enter):
Код
=ЕСЛИОШИБКА(ИНДЕКС($A$2:$A$12;НАИМЕНЬШИЙ(ЕСЛИ(ЕСЛИОШИБКА(A2:A12;"")<>"";СТРОКА(A2:A12)-1;"");СТРОКА()-1));"")
Изменено: evgeniygeo - 24.04.2024 17:08:51
Быстрая очистка диапазона с данными (макрос), Оптимизация удаления (очистки) данных (макрос)
 
mitya528,
еще как вариант сократить диапазон для очистки:
Код
Range("A3:P" & Cells(Rows.Count, 1).End(xlUp).Row + 1).ClearContents


Также, можно сделать при изменении коэф пересчет значений макросом
Изменено: evgeniygeo - 24.04.2024 16:38:43
Быстрая очистка диапазона с данными (макрос), Оптимизация удаления (очистки) данных (макрос)
 
mitya528,
обновляются макросом или как?
Быстрая очистка диапазона с данными (макрос), Оптимизация удаления (очистки) данных (макрос)
 
mitya528,
а стоит ли вообще вставлять формулу?
может посчитать в VBA и вставлять только значение?
Быстрая очистка диапазона с данными (макрос), Оптимизация удаления (очистки) данных (макрос)
 
mitya528,
1) а обязательно целиком строки очищать?
2) от селектов точно бы избавиться
Код
Rows("3:250000").ClearContents

3) добавить в начало кода:
Код
Application.ScreenUpdating = False
Application.EnableEvents = False
Application.Calculation = xlCalculationManual

и в конце кода:
Код
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
Application.EnableEvents = True
Изменено: evgeniygeo - 24.04.2024 15:56:50
Цветной шрифт в VBA форме, Текст в форме должен быть такогого же цвета что и в списке на листе
 
Списались в почте, предложил вариант с заменой ListBox на ListView. ТС думает.
Обменялись
Изменено: evgeniygeo - 25.04.2024 07:52:07
Поиск точного числа в интервале
 
Raneli,
может так:
Код
=ИНДЕКС(Таблица1[[#Все];[Абсолютная глубина]]; ПОИСКПОЗ(N4;Таблица1[[#Все];[MD]];1))
Изменено: evgeniygeo - 24.04.2024 11:04:33
Цветной шрифт в VBA форме, Текст в форме должен быть такогого же цвета что и в списке на листе
 
пишу в лс свои предложения
Изменено: evgeniygeo - 24.04.2024 07:21:54
Удаление строк с отрицательным значением
 
nomad_a,
Код
Sub aaaaaaaabbb()
    Dim arr()
    Dim i As Long
    Dim q As Variant
    Dim matchFound As Boolean
    Dim numColumns As Long

    lLastRowA = Sheets("A").Cells(Rows.Count, 1).End(xlUp).Row
    lLastRowB = Sheets("B").Cells(Rows.Count, 1).End(xlUp).Row
    Set rngA = Sheets("A").Range("A2:C" & lLastRowA)
    Set rngB = Sheets("B").Range("A2:C" & lLastRowB)
    numColumns = rngA.Columns.Count
    
    ReDim arr(1 To lLastRowA, 1 To numColumns)
    
    For rA = 1 To rngA.Rows.Count
        matchFound = False
        For rB = 1 To rngB.Rows.Count
            If rngA(rA, 1) = q Then
                Exit For
            End If
            If rngA(rA, 1) = rngB(rB, 1) Then
                If rngA(rA, 3) - rngB(rB, 2) > 0 Then
                q = rngA(rA, 1)
                    Exit For
                End If
                matchFound = True
                Exit For
            End If
        Next rB
        
        If Not matchFound Then
            i = i + 1
            For j = 1 To numColumns
                arr(i, j) = rngA(rA, j)
            Next j
        End If
    Next rA
    
        Sheets("A").Range("A2:C" & lLastRowA).ClearContents
        Sheets("A").Range("A2").Resize(i, 3).Value = arr
End Sub
Сравнение трех и более таблиц на разных листах excel, Сравнение трех и более таблиц на разных листах excel
 
Цитата
delph3r написал:
каждую строку колонки B
нет, каждую строку колонок A, B, C
Цитата
delph3r написал:
листа "Последняя таблица" со всеми предыдущими листами?
активного листа, со всеми другими
Цитата
delph3r написал:
А сильно сложнее будет, если Результат будет выдаваться только тогда, когда все строки колонки B из листа "Последняя таблица" совпадают со всеми строками колонки
думаю, что нет, попробуйте поправить код
Изменено: evgeniygeo - 19.04.2024 10:45:33
VBA преобразовать строки в числа и выполнить в 1с, Хочу преобразовать по нужным Мне колонкам строки в дату
 
Цитата
МатросНаЗебре написал:
Задача решена, расходимся.
:D
Сравнение трех и более таблиц на разных листах excel, Сравнение трех и более таблиц на разных листах excel
 
delph3r,
чтобы сравнить каждый лист с каждым и вывести совпадения:
Код

для последнего листа с подсветкой:
Код
Изменено: evgeniygeo - 19.04.2024 08:46:40
MsgBox в Офис Р-7
 
все настолько плохо в Р-7??? 8-0
Изменено: evgeniygeo - 19.04.2024 06:18:39
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 97 След.
Наверх