Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 21 След.
Вписывание фотографии в фигуру
 
Может так:
Код
        If .Width > .Height Then
            .Height = shpHost.Height
            .Top = shpHost.Top
            .Left = shpHost.Left + shpHost.Width / 2 - .Width / 2
            .LockAspectRatio = msoFalse
            var = .Width
            .ScaleWidth (shpHost.Width / var), msoFalse, msoScaleFromMiddle
'            .PictureFormat.Crop.PictureWidth = var
        Else
            .Width = shpHost.Width
            .Left = shpHost.Left
            DoEvents

            .LockAspectRatio = msoFalse
            var = .Height
            .ScaleHeight (shpHost.Height / var), msoFalse, msoScaleFromMiddle
            .PictureFormat.Crop.PictureHeight = var
            .Top = shpHost.Top + shpHost.Height / 2 - shp.Height / 2
        End If
Нужно перенести работу функции в макрос
 
массив+функции обработки
Нужно перенести работу функции в макрос
 
Цитата
работа макросом, проставки функции во все ячейки
Сколько раз можно повторять?! Макросом не проставлять формулы в ячейки!
Наоборот! Считать одной строчкой в массив. Обработать в массив с помощью функции
И вывалить на лист опять же одной строчкой!
Нужно перенести работу функции в макрос
 
Цитата
Т.к эти функции тормозят.
Неее! тормозят не функции. Тормозит запись-чтение на лист и формулы.
Считывай всё в массивы. Обрабатывай в памяти и вываливай результат на лист
Цитата
Функцию нужно адекватно ...
А адекватно ли работает функция?
При равенстве значений "похожесть" 82,42
Тимофеев   СергейТимофеев Сергей85,42%ИСТИНА
Изменено: Александр Моторин - 2 Апр 2019 11:54:15
управление переносами текста к кнопкам на ленте, возможно ли самому, принудительно назначать перенос текста к комментариям на кнопку?
 
Или выпадающее меню
Код
   Dim popup As CommandBarControl    ' добавляем выпадающее меню
    Set popup = Add_Control(AddinMenu, ct_POPUP, 548, "", "Доп. макросы", , True)
    For i = 1 To 5    ' добавляем пункты в подменю popup
        Add_Control popup, ct_BUTTON, 70 + i, "AdditionalMacros", "Дополнительный макрос " & i, False, , CStr(i)
    Next i
управление переносами текста к кнопкам на ленте, возможно ли самому, принудительно назначать перенос текста к комментариям на кнопку?
 
Можно загрузить комбобокс
Удаление объектов по щелчку - с определением координат их центров
 
Код
Sub Макрос1()
    For Each Q In ActiveSheet.Shapes
        Q.OnAction = "qwer"
    Next Q
End Sub

Sub qwer()
    ActiveSheet.Shapes(Application.Caller).Delete
End Sub
Сначала запустить Макрос1
Надеюсь с координатами объекта разберёшься?
Изменено: Александр Моторин - 29 Мар 2019 15:24:25
Добавить условие для ограничения поиска файлов
 
Просто сначала проверка по маске  190. А потом  по 1904617
Добавить условие для ограничения поиска файлов
 
Можно считать сколько раз встречается маска
Код
        For Each fil In curfold.Files    '
            If fil.Name Like "*" & Mask Then
                If UBound(Split(fil.Name, Mask)) < 2 Then FileNamesColl.Add fil.Path ' если только 1 раз встречается маска
            End If
        Next
Округление значения до определенного числа, с условием
 
Я ничего не придумал. Только то, что написано!
Цитата
а если в ячейке со значением 17, то округлить до 10
Код
=ЦЕЛОЕ(RC[-1]/10)*10+ЕСЛИ(ОСТАТ(RC[-1];10)<=6;6;10)
Изменено: Александр Моторин - 26 Мар 2019 21:32:47
Округление значения до определенного числа, с условием
 
Код
=ЕСЛИ(ОСТАТ(RC[-1];10)<=6;6;10)
Как автоматизировать выгрузку технического задания по номеру из каталога?
 
Василий Иванович:
- Петька! Я книгу написал! 32 тома!
Петька читает: первый том  1 строка:
Василий Иванович поехал в штаб. Цок цок цок ...32 тома
Пролог: Василий Иванович приехал в штаб.

ищи такие выражения:  Range("A1:C1").Select
Range("A12:C21").Select
Range("A12:C31").Select
С это номер 3 колонки. Четвёртая колонка D
Объединение последовательных чисел в числовой период
 
обратное преобразование есть? периоды в ряд?
То можно сначала в ряд потом в периоды
Как-то был такой вопрос. решал так. Оказалось проще
Excel зависает при сохранении файлов
 
Перенести данные в новый файл
Только не листы. А данные.
И тексты модулей
Изменено: Александр Моторин - 19 Мар 2019 09:12:20
Подсчет значений в диапазоне. Ускорить макрос
 
При больших объёмах лучше вообще отказаться от формул
Код  RAN повесил ексель на миллионе строк.
Макросом обработал за 15с
00:00  считывание  массива 1041256 строк
00:02  обработка  массива 1041256 строк
00:01  Применение результатов  массива 1041256 строк
00:12  выгрузка  массива с результатами 1041256 строк
00:15 Всего времени
Код
Sub qwert()
    
   Dim r, lr, m, tt, ttt, u, sl: Set sl = CreateObject("Scripting.Dictionary")
   With ActiveSheet
   
        tt = Time
        ttt = Time
        lr = .Cells(.Rows.Count, 1).End(xlUp).Row
        m = .Cells(1, 1).Resize(lr, 2)
        Debug.Print Format(Time - tt, "nn:ss") & "  считывание  массива " & UBound(m) & " строк"
        
        tt = Time
        For r = 2 To UBound(m)
            sl(m(r, 1)) = sl(m(r, 1)) + 1
        Next r
        Debug.Print Format(Time - tt, "nn:ss") & "  обработка  массива " & UBound(m) & " строк"
        
        tt = Time

        For r = 1 To UBound(m)
            m(r, 2) = sl(m(r, 1))
        Next r
        Debug.Print Format(Time - tt, "nn:ss") & "  Применение результатов  массива " & UBound(m) & " строк"
        
        tt = Time
        .Cells(1, 1).Resize(UBound(m), 2) = m
        Debug.Print Format(Time - tt, "nn:ss") & "  выгрузка  массива с результатами " & UBound(m) & " строк"
        Debug.Print Format(Time - ttt, "nn:ss") & " Всего времени "
        
   End With
End Sub
Удаление строк по значениям в нескольких ячейках
 
Если в других колонках нет значений, то быстрей будет просто считать в массив, обработать массив, очистить лист (или вывести на новый лист) и вывести массив на лист
Изменено: Александр Моторин - 11 Мар 2019 20:49:39
Выделить, если есть изменения
 
Цитата
мне правда сложно
Разве это сложно?!
Цитата
появлялся красный восклицательный знак, на уменьшение - зеленый
Вот это, реально, сложно!
Рад бы помочь! Но для меня нет разницы! Дальтоник!
Но это не мешает мне работать в табличном редакторе ексел
Это же не раскраска из Мурзилки!
Открыл файл. И не понял
Цитата
рядом в скобках цифры
Не увидел скобок. Их тоже надо получить? Куда вставлять?
Сделала бы приме вручную: что есть и что надо получить
Троян в макросе
 
Картинку хотел загрузить ... не получается копипастом
Изменено: Александр Моторин - 1 Мар 2019 19:30:21
Троян в макросе
 
Цитата
Данный макрос заменяет каждое слово в TextBox с заглавной буквы
Может так проще?
Код
 MsgBox StrConv("наша таня громко плачет", 3)
Линейный раскрой деталей одинаковой длины, поняв принцип действий можно получать расчёты
 
Цитата
Припуск на выравнивание– вводятся вручную
Интрига затянулась!
Осмелюсь повторить вопрос: ЗАЧЕМ она вводится?
остаток:
Цитата
Цитата
=3000-ЦЕЛОЕ(3000/(250+3))*(250+3)
количество деталей:
Цитата
=ЦЕЛОЕ(3000/(250+3))
Изменено: Александр Моторин - 27 Фев 2019 19:51:30
Макрос на поиск по первым буквам
 
Можно не показывать список
А текстбокс показывать
А список показать если в текстбоксе больше 2 символов
Вставить формулу массива через vba
 
Цитата
таких формул порядка 500 в отчете, что очень тормозит работу когда работаю
Ну раз уж решили сделать макросом, то можно вообще отказаться от формул? сделать всё макросом
Разделитель для текста и чисел в одной ячейки PQ
 
макрос
Вывод только согласных из ячейки.
 
UDF
Формирование текста и отправка письма из Excel
 
Цитата
но после установки Офиса 2016
Ответ напрашивается сам: верните предыдущую версию
Чем новее версия тем больше в ней глюков
VBA Экспорт в XML из таблицы значений без дублей сравнивая 2 столбца
 
Ничего не понятно. Сделал бы пример вручную, что должно получиться
Перенос данных из одной книги в другую с сохранением формата
 
Копированием макросом
Удаление строк по условию через форму
 
Код
Private Sub UserForm_Initialize()
    Me.Caption = "Списание" & "(" & Format(Now, "dd.mm.yyyy") & ")"
    zapolnit
End Sub


Private Sub zapolnit()
    With Sheets("Склад")
    Dim arr
    arr = .Range("A1", .Cells(Rows.Count, "A").End(xlUp)).value
    If Not IsArray(arr) Then
    ReDim arr(1 To 1)
    arr(1) = .Range("A2", .Cells(Rows.Count, "A").End(xlUp)).value
    End If
        Me.ComboBox1.List = arr
    End With

End Sub


Private Sub CommandButton1_Click()
Dim arr As Range, value, i As Long, i2 As Long
If Me.ComboBox1.ListIndex > 0 Then
    Application.ScreenUpdating = False
    
    With Sheets("Списание")
        i = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
        .Cells(i, 1) = Me.ComboBox1
        
        .Range(.Cells(1, 1), .Cells(i, 1)).Borders.LineStyle = xlContinuous
    End With
    
    With Sheets("Склад")
        i2 = Me.ComboBox1.ListIndex + 1
        .Rows(i2).EntireRow.Delete
        MsgBox "Информация внесена", 64, "Сообщение"
        Me.ComboBox1.ListIndex = -1
'        Unload Me
'        или
        zapolnit
        
    End With
    Application.ScreenUpdating = True
End If

End Sub
Меню из макросов
 
Цитата
Меню отдельное, не на панели инструментов или ленте
Хмм... Это как?  И где?
Не в меню и не а панели?
А где? На заборе?
Вам в кабаке приносят отдельное меню?
Хде это отдельное меню должно, по вашему, распологаться в екселе?
Вхождение данных из одной колонки в другой.
 
Третью колонку сначала в массив потом в словарь.
Первую колонку со второй в массив
Потом пробежать один раз по массиву и проверять по словарю
Или наоборот: первую колонку в словарь(ключ) и вторую в словарь (значения)
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 21 След.
Наверх