Домашняя страница Undo Do Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Записи участника (krosav4ig) - Мир MS Excel

Результаты поиска
krosav4ig Дата: Среда, 27.06.2018, 19:26 | Сообщение № 741 | Тема: не срабатывает код макроса
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
тока дополз до компа,
исчо одна поправка
[vba]
Код
Sub Макрос1()
    Dim dt As Date
    
    dt = Date + 1
    With Application
        .EnableEvents = 0: .ScreenUpdating = 0
        With ActiveSheet
            If .FilterMode Then .ShowAllData
            With .UsedRange
                With Intersect(.Cells, .Offset(2))
                    .Rows.Hidden = True
                    If .Find(dt, , xlFormulas) Is Nothing Then GoTo x
                    .Replace dt, "=zz1", 2, , , , False, False
                End With
             End With
        End With
        On Error Resume Next
        With [zz1].Dependents
            .Rows.Hidden = False
            .Formula = dt
        End With
x:      .EnableEvents = 1: .ScreenUpdating = 1
    End With
End Sub
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Среда, 27.06.2018, 19:27
 
Ответить
Сообщениетока дополз до компа,
исчо одна поправка
[vba]
Код
Sub Макрос1()
    Dim dt As Date
    
    dt = Date + 1
    With Application
        .EnableEvents = 0: .ScreenUpdating = 0
        With ActiveSheet
            If .FilterMode Then .ShowAllData
            With .UsedRange
                With Intersect(.Cells, .Offset(2))
                    .Rows.Hidden = True
                    If .Find(dt, , xlFormulas) Is Nothing Then GoTo x
                    .Replace dt, "=zz1", 2, , , , False, False
                End With
             End With
        End With
        On Error Resume Next
        With [zz1].Dependents
            .Rows.Hidden = False
            .Formula = dt
        End With
x:      .EnableEvents = 1: .ScreenUpdating = 1
    End With
End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 27.06.2018 в 19:26
krosav4ig Дата: Вторник, 26.06.2018, 23:25 | Сообщение № 742 | Тема: не срабатывает код макроса
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
не вылетит в ошибку

точно, это я не учел
что то с заголовками столбцов макрос делает! переименовывает
Этнияоносамо :D
[vba]
Код
Sub Макрос1()
    With Application
        .EnableEvents = 0: .ScreenUpdating = 0
        With ActiveSheet
            If .FilterMode Then .ShowAllData
            With .UsedRange
                With Intersect(.Columns("N:O"), .Offset(1))
                    .Replace Date, "=zz1", 2, , , , False, False
                    .Rows.Hidden = True
                End With
             End With
        End With
        With [zz1].DirectDependents
            .Rows.Hidden = False
            .Formula = Date
        End With
        .EnableEvents = 1: .ScreenUpdating = 1
    End With
End Sub
[/vba]
К сообщению приложен файл: 5195153.xlsm (67.2 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщение
не вылетит в ошибку

точно, это я не учел
что то с заголовками столбцов макрос делает! переименовывает
Этнияоносамо :D
[vba]
Код
Sub Макрос1()
    With Application
        .EnableEvents = 0: .ScreenUpdating = 0
        With ActiveSheet
            If .FilterMode Then .ShowAllData
            With .UsedRange
                With Intersect(.Columns("N:O"), .Offset(1))
                    .Replace Date, "=zz1", 2, , , , False, False
                    .Rows.Hidden = True
                End With
             End With
        End With
        With [zz1].DirectDependents
            .Rows.Hidden = False
            .Formula = Date
        End With
        .EnableEvents = 1: .ScreenUpdating = 1
    End With
End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 26.06.2018 в 23:25
krosav4ig Дата: Вторник, 26.06.2018, 14:52 | Сообщение № 743 | Тема: не срабатывает код макроса
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
как-то так
[vba]
Код
Sub Макрос1()
    With Application
        .EnableEvents = 0: .ScreenUpdating = 0
        With ActiveSheet
            With .AutoFilter
                If .FilterMode Then .ShowAllData
            End With
            With .UsedRange
                With Intersect(.Cells, .Offset(2))
                    .Replace Date, "=zz1", 2, , , , False, False
                    .Rows.Hidden = True
                End With
             End With
        End With
        With [zz1].Dependents
            .Rows.Hidden = False
            .Formula = Date
        End With
        .EnableEvents = 1: .ScreenUpdating = 1
    End With
End Sub
[/vba]
К сообщению приложен файл: 1352376-1-.xlsm (25.1 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщениекак-то так
[vba]
Код
Sub Макрос1()
    With Application
        .EnableEvents = 0: .ScreenUpdating = 0
        With ActiveSheet
            With .AutoFilter
                If .FilterMode Then .ShowAllData
            End With
            With .UsedRange
                With Intersect(.Cells, .Offset(2))
                    .Replace Date, "=zz1", 2, , , , False, False
                    .Rows.Hidden = True
                End With
             End With
        End With
        With [zz1].Dependents
            .Rows.Hidden = False
            .Formula = Date
        End With
        .EnableEvents = 1: .ScreenUpdating = 1
    End With
End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 26.06.2018 в 14:52
krosav4ig Дата: Вторник, 26.06.2018, 04:42 | Сообщение № 744 | Тема: ИНДЕКС, СУММ, ЕСЛИ, СТРОКА
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Подскажите пожалуйста ошибку

в названии темы, п.2
[offtop]а мне больше нравятся ПРОСМОТР, ABS, МУМНОЖ, ЗНАК


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщение
Подскажите пожалуйста ошибку

в названии темы, п.2
[offtop]а мне больше нравятся ПРОСМОТР, ABS, МУМНОЖ, ЗНАК

Автор - krosav4ig
Дата добавления - 26.06.2018 в 04:42
krosav4ig Дата: Вторник, 26.06.2018, 03:37 | Сообщение № 745 | Тема: вставка тире черезе количество знаков
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
до кучи [vba]
Код
Function ccc$(t$)
With CreateObject("VBScript.RegExp"): .Pattern = "\d{4}(?=\d)":ccc = .Replace(t, "$&-")
  End With
End Function
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Вторник, 26.06.2018, 03:37
 
Ответить
Сообщениедо кучи [vba]
Код
Function ccc$(t$)
With CreateObject("VBScript.RegExp"): .Pattern = "\d{4}(?=\d)":ccc = .Replace(t, "$&-")
  End With
End Function
[/vba]

Автор - krosav4ig
Дата добавления - 26.06.2018 в 03:37
krosav4ig Дата: Воскресенье, 24.06.2018, 14:35 | Сообщение № 746 | Тема: Список без повторов
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
как-то так
[vba]
Код
Private Sub UserForm_Initialize()
    
    Dim iLastRow As Long
    Dim Dic As Object
    
    iLastRow = Sheets("Журнал ИБ").Cells(Rows.Count, 1).End(xlUp).Row + 1
    Akt = iLastRow - 4
    'Cells(iLastRow, 1) = Akt
    
    karta1 = Akt
    
    'zakaz = Application.Max(Sheets("Журнал ИБ").Range("N5:N")) + 1
    'spisanie = Application.Max(Sheets("Журнал ИБ").Range("O5:O")) + 1
    zakaz = Akt
    spisanie = Akt
   
    Data1 = Format(Date, "dd.mm.yyyy")
    Data2 = Format(Date, "dd.mm.yyyy")
    Data3 = Format(Date, "dd.mm.yyyy")
    Data4 = Format(Date, "dd.mm.yyyy")
    
    'список для наименований
    Dim i As Long
    i = 2
    Do While Sheets("reestr").Cells(i, 4) <> 0
        name1.AddItem Sheets("reestr").Cells(i, 4)
        i = i + 1
    Loop
     
    remont.List = Array("ТО-1", "ТО-2", "ТО-3", "ТО-4", "ТР-1", "ТР-2", "ТР-3", "СР", "КР", "ВП", "СП", "Ревизия")
    reshenie.List = Array("Р", "У", "Г", "Д")
      
      
    'списки фамилий
    Set Dic = CreateObject("Scripting.Dictionary")
    Populate fio1, ['Журнал ИБ'!K5], Dic
    Populate fiosklad1, ['Журнал ИБ'!L5], Dic
    Populate fiosklad2, ['Журнал ИБ'!R5], Dic
    Populate fio2, ['Журнал ИБ'!S5], Dic
    Populate ceh1, ['Журнал ИБ'!Q5], Dic
    Populate ceh2, ['Журнал ЗС'!H5], Dic
    Populate fio3, ['Журнал ИБ'!I5], Dic
    Populate fio4, ['Журнал ЗС'!J5], Dic
    Populate fio5, ['Журнал ЗС'!N5], Dic
    Populate fiosklad5, ['Журнал ЗС'!O5], Dic
    Set Dic = Nothing
End Sub
Private Sub Populate(ByRef ctrl As Control, ByRef Cell As Range, ByRef Dic As Object)
    Dim arr As Variant
    With Cell.Parent
        arr = .Range(Cell, .Cells(.Rows.Count, Cell.Column).End(xlUp))
    End With
    If IsArray(arr) Then
        With Dic
            .RemoveAll
            For i = LBound(arr) To UBound(arr)
                .Item(arr(i, 1)) = 1
            Next
            ctrl.List = .Keys
        End With
    Else
        ctrl.List = Array(arr)
    End If
End Sub
[/vba]
К сообщению приложен файл: 0906726.xlsm (63.2 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Воскресенье, 24.06.2018, 14:36
 
Ответить
Сообщениекак-то так
[vba]
Код
Private Sub UserForm_Initialize()
    
    Dim iLastRow As Long
    Dim Dic As Object
    
    iLastRow = Sheets("Журнал ИБ").Cells(Rows.Count, 1).End(xlUp).Row + 1
    Akt = iLastRow - 4
    'Cells(iLastRow, 1) = Akt
    
    karta1 = Akt
    
    'zakaz = Application.Max(Sheets("Журнал ИБ").Range("N5:N")) + 1
    'spisanie = Application.Max(Sheets("Журнал ИБ").Range("O5:O")) + 1
    zakaz = Akt
    spisanie = Akt
   
    Data1 = Format(Date, "dd.mm.yyyy")
    Data2 = Format(Date, "dd.mm.yyyy")
    Data3 = Format(Date, "dd.mm.yyyy")
    Data4 = Format(Date, "dd.mm.yyyy")
    
    'список для наименований
    Dim i As Long
    i = 2
    Do While Sheets("reestr").Cells(i, 4) <> 0
        name1.AddItem Sheets("reestr").Cells(i, 4)
        i = i + 1
    Loop
     
    remont.List = Array("ТО-1", "ТО-2", "ТО-3", "ТО-4", "ТР-1", "ТР-2", "ТР-3", "СР", "КР", "ВП", "СП", "Ревизия")
    reshenie.List = Array("Р", "У", "Г", "Д")
      
      
    'списки фамилий
    Set Dic = CreateObject("Scripting.Dictionary")
    Populate fio1, ['Журнал ИБ'!K5], Dic
    Populate fiosklad1, ['Журнал ИБ'!L5], Dic
    Populate fiosklad2, ['Журнал ИБ'!R5], Dic
    Populate fio2, ['Журнал ИБ'!S5], Dic
    Populate ceh1, ['Журнал ИБ'!Q5], Dic
    Populate ceh2, ['Журнал ЗС'!H5], Dic
    Populate fio3, ['Журнал ИБ'!I5], Dic
    Populate fio4, ['Журнал ЗС'!J5], Dic
    Populate fio5, ['Журнал ЗС'!N5], Dic
    Populate fiosklad5, ['Журнал ЗС'!O5], Dic
    Set Dic = Nothing
End Sub
Private Sub Populate(ByRef ctrl As Control, ByRef Cell As Range, ByRef Dic As Object)
    Dim arr As Variant
    With Cell.Parent
        arr = .Range(Cell, .Cells(.Rows.Count, Cell.Column).End(xlUp))
    End With
    If IsArray(arr) Then
        With Dic
            .RemoveAll
            For i = LBound(arr) To UBound(arr)
                .Item(arr(i, 1)) = 1
            Next
            ctrl.List = .Keys
        End With
    Else
        ctrl.List = Array(arr)
    End If
End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 24.06.2018 в 14:35
krosav4ig Дата: Вторник, 12.06.2018, 14:10 | Сообщение № 747 | Тема: ThisWorkbook.Close на событии Workbook_Open: Как обойти?
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Закрыть все экземпляры Excel, открыть файл с зажатым шифтом


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеЗакрыть все экземпляры Excel, открыть файл с зажатым шифтом

Автор - krosav4ig
Дата добавления - 12.06.2018 в 14:10
krosav4ig Дата: Вторник, 12.06.2018, 04:29 | Сообщение № 748 | Тема: Разность двух частей нескольких значений типа 8:00/16:30
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Светлый, упс, порядок функций перепутал, по памяти писал %) должно быть
Код
=СУММ(ПОДСТАВИТЬ(ПРАВБ(F7:J7;5);"/";)-ЛЕВБ(F7:J7;5))


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеСветлый, упс, порядок функций перепутал, по памяти писал %) должно быть
Код
=СУММ(ПОДСТАВИТЬ(ПРАВБ(F7:J7;5);"/";)-ЛЕВБ(F7:J7;5))

Автор - krosav4ig
Дата добавления - 12.06.2018 в 04:29
krosav4ig Дата: Вторник, 12.06.2018, 00:41 | Сообщение № 749 | Тема: Разность двух частей нескольких значений типа 8:00/16:30
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
мои две по 51
Код
=СУММ(ПСТР(F7:J7;ПОИСК("/";0&F7:J7)^{0:1};5)*{-1:1})

Код
=СУММ(ПОДСТАВИТЬ(ПРАВБ(F7:J7;5);"/";)-ЛЕВБ(F7:J7;5))


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Вторник, 12.06.2018, 04:29
 
Ответить
Сообщениемои две по 51
Код
=СУММ(ПСТР(F7:J7;ПОИСК("/";0&F7:J7)^{0:1};5)*{-1:1})

Код
=СУММ(ПОДСТАВИТЬ(ПРАВБ(F7:J7;5);"/";)-ЛЕВБ(F7:J7;5))

Автор - krosav4ig
Дата добавления - 12.06.2018 в 00:41
krosav4ig Дата: Среда, 06.06.2018, 16:28 | Сообщение № 750 | Тема: Разность двух частей нескольких значений типа 8:00/16:30
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
У мну две формулы по 52 c =


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеУ мну две формулы по 52 c =

Автор - krosav4ig
Дата добавления - 06.06.2018 в 16:28
krosav4ig Дата: Четверг, 31.05.2018, 19:31 | Сообщение № 751 | Тема: Макрос для скриншота диапазона
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Здравствуйте.
Тут качаете файл и исходным кодом.
Тут пример его использования
[moder]
А чё, файл нельзя было сюда положить? Ну сколько можно об одном и том же говорить? Завтра файл оттуда уберут и ссылка битой окажется. Довложил файл в это сообщение[/moder]
К сообщению приложен файл: PastePicture.zip (22.2 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал _Boroda_ - Четверг, 31.05.2018, 19:38
 
Ответить
СообщениеЗдравствуйте.
Тут качаете файл и исходным кодом.
Тут пример его использования
[moder]
А чё, файл нельзя было сюда положить? Ну сколько можно об одном и том же говорить? Завтра файл оттуда уберут и ссылка битой окажется. Довложил файл в это сообщение[/moder]

Автор - krosav4ig
Дата добавления - 31.05.2018 в 19:31
krosav4ig Дата: Среда, 23.05.2018, 06:34 | Сообщение № 752 | Тема: Сортировка адресов
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Здравствуйте. К сожалению, только так
К сообщению приложен файл: 2012601.png (11.3 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеЗдравствуйте. К сожалению, только так

Автор - krosav4ig
Дата добавления - 23.05.2018 в 06:34
krosav4ig Дата: Среда, 23.05.2018, 03:36 | Сообщение № 753 | Тема: В правилах отсутствует пункт "Запустить скрипт"
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
ArkaIIIa, Вам нужно что-то типа этого?
Пример использования
До кучи


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеArkaIIIa, Вам нужно что-то типа этого?
Пример использования
До кучи

Автор - krosav4ig
Дата добавления - 23.05.2018 в 03:36
krosav4ig Дата: Вторник, 22.05.2018, 06:08 | Сообщение № 754 | Тема: Суммпроизв с условиями
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Здравствуйте
так нужно?
Код
=СУММПРОИЗВ(ЕСЛИОШИБКА(ИНДЕКС(E3:E50;Ч(ИНДЕКС(ПОИСКПОЗ(N3:N18;A3:A50;);{0}))););O3:O18)
или массивная формула
Код
=СУММ((A3:A50=ТРАНСП(N3:N18))*E3:E50*Ч(ТРАНСП(O3:O18)))


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Вторник, 22.05.2018, 06:24
 
Ответить
СообщениеЗдравствуйте
так нужно?
Код
=СУММПРОИЗВ(ЕСЛИОШИБКА(ИНДЕКС(E3:E50;Ч(ИНДЕКС(ПОИСКПОЗ(N3:N18;A3:A50;);{0}))););O3:O18)
или массивная формула
Код
=СУММ((A3:A50=ТРАНСП(N3:N18))*E3:E50*Ч(ТРАНСП(O3:O18)))

Автор - krosav4ig
Дата добавления - 22.05.2018 в 06:08
krosav4ig Дата: Среда, 25.04.2018, 16:23 | Сообщение № 755 | Тема: Сокращение размера кода с похожими повторяющимися действиями
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Так надо?
[vba]
Код
Option Explicit
Sub Raschet()
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
    Calc [Sens!C80], [Sens!C81], [Sens!B14:B20].Value, Array(13, 47)
    Calc [Sens!C81], [Sens!C82], [Sens!B23:B29].Value, Array(23, 57)
    Calc [Sens!C83], [Sens!C84], [Sens!B33:B39].Value, Array(33, 67)
    Application.ScreenUpdating = True
    Application.Calculation = xlCalculationAutomatic
End Sub
Sub Calc(ByRef r1 As Range, ByRef r2 As Range, arr1 As Variant, arr2 As Variant)
Dim a&, i&, j&, r As Variant, v As Variant
    For a = 3 To 9
        r1 = Cells(arr2(0), a)
        i = 0
        For Each v In arr1
            r2 = v
            Application.Calculate
            i = i + 1
            For Each r In arr2
                For j = 0 To 20 Step 10
                    Cells(r + i, a + j) = [Sens!B1].Offset(r - 1, j)
    Next j, r, v, a
    r1 = 1
End Sub
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Среда, 25.04.2018, 16:26
 
Ответить
СообщениеТак надо?
[vba]
Код
Option Explicit
Sub Raschet()
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
    Calc [Sens!C80], [Sens!C81], [Sens!B14:B20].Value, Array(13, 47)
    Calc [Sens!C81], [Sens!C82], [Sens!B23:B29].Value, Array(23, 57)
    Calc [Sens!C83], [Sens!C84], [Sens!B33:B39].Value, Array(33, 67)
    Application.ScreenUpdating = True
    Application.Calculation = xlCalculationAutomatic
End Sub
Sub Calc(ByRef r1 As Range, ByRef r2 As Range, arr1 As Variant, arr2 As Variant)
Dim a&, i&, j&, r As Variant, v As Variant
    For a = 3 To 9
        r1 = Cells(arr2(0), a)
        i = 0
        For Each v In arr1
            r2 = v
            Application.Calculate
            i = i + 1
            For Each r In arr2
                For j = 0 To 20 Step 10
                    Cells(r + i, a + j) = [Sens!B1].Offset(r - 1, j)
    Next j, r, v, a
    r1 = 1
End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 25.04.2018 в 16:23
krosav4ig Дата: Среда, 25.04.2018, 03:47 | Сообщение № 756 | Тема: Сокращение размера кода с похожими повторяющимися действиями
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Здравствуйте.
Пробуйте так.
[vba]
Код
Sub Raschet()
    Dim i&, j&, r As Variant, v As Variant, a&
    Dim Inp1 As Range
    
    Set Inp1 = [Sens!C80]
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual

    For a = 3 To 9
        Inp1 = Cells(13, a)
        i = 0
        For Each v In [Sens!B14:B20].Value
            [Sens!C81] = v
            Application.Calculate
            i = i + 1
            For Each r In Array(13, 47)
                For j = 0 To 20 Step 10
                    Cells(r + i, a + j) = [Sens!B1].Offset(r - 1, j)
    Next j, r, v, a
    Application.ScreenUpdating = True
    Application.Calculation = xlCalculationAutomatic
End Sub
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеЗдравствуйте.
Пробуйте так.
[vba]
Код
Sub Raschet()
    Dim i&, j&, r As Variant, v As Variant, a&
    Dim Inp1 As Range
    
    Set Inp1 = [Sens!C80]
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual

    For a = 3 To 9
        Inp1 = Cells(13, a)
        i = 0
        For Each v In [Sens!B14:B20].Value
            [Sens!C81] = v
            Application.Calculate
            i = i + 1
            For Each r In Array(13, 47)
                For j = 0 To 20 Step 10
                    Cells(r + i, a + j) = [Sens!B1].Offset(r - 1, j)
    Next j, r, v, a
    Application.ScreenUpdating = True
    Application.Calculation = xlCalculationAutomatic
End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 25.04.2018 в 03:47
krosav4ig Дата: Пятница, 13.04.2018, 16:56 | Сообщение № 757 | Тема: Вопросы по работе форумов
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
можно пока у себя затычку в TamperMonkey сделать
[vba]
Код
// ==UserScript==
// @name         Kludge
// @match        http://www.excelworld.ru/*
// @grant        GM_addStyle
/*jshint multistr: true */
// ==/UserScript==

GM_addStyle (
'.switch, .switchActive,  .pagesInfo {\
    border: 1px solid rgb(169, 169, 169)!important;\
    display: table-cell!important;\
    min-width: 1.6em;\
    text-align: center;\
}\
.switches {\
    display: table;\
    border-collapse: collapse;\
}'
);
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Пятница, 13.04.2018, 22:19
 
Ответить
Сообщениеможно пока у себя затычку в TamperMonkey сделать
[vba]
Код
// ==UserScript==
// @name         Kludge
// @match        http://www.excelworld.ru/*
// @grant        GM_addStyle
/*jshint multistr: true */
// ==/UserScript==

GM_addStyle (
'.switch, .switchActive,  .pagesInfo {\
    border: 1px solid rgb(169, 169, 169)!important;\
    display: table-cell!important;\
    min-width: 1.6em;\
    text-align: center;\
}\
.switches {\
    display: table;\
    border-collapse: collapse;\
}'
);
[/vba]

Автор - krosav4ig
Дата добавления - 13.04.2018 в 16:56
krosav4ig Дата: Пятница, 13.04.2018, 13:38 | Сообщение № 758 | Тема: Неверное отображение времени в сводной таблице
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Здравствуйте.
У вас включена группировка минут по полю Время, если ее снять(ПКМ>Разгруппировать), будет отображаться полное время


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Пятница, 13.04.2018, 13:38
 
Ответить
СообщениеЗдравствуйте.
У вас включена группировка минут по полю Время, если ее снять(ПКМ>Разгруппировать), будет отображаться полное время

Автор - krosav4ig
Дата добавления - 13.04.2018 в 13:38
krosav4ig Дата: Пятница, 13.04.2018, 13:35 | Сообщение № 759 | Тема: Число из ячейки передать в переменную как текст с форматом
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Здавствуйте
[vba]
Код
gg1 = Format(ActiveSheet.Cells(1, 1), "0000")
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеЗдавствуйте
[vba]
Код
gg1 = Format(ActiveSheet.Cells(1, 1), "0000")
[/vba]

Автор - krosav4ig
Дата добавления - 13.04.2018 в 13:35
krosav4ig Дата: Среда, 11.04.2018, 10:55 | Сообщение № 760 | Тема: Как собрать данные с нескольких листов макросом (кнопкой)
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Можно использовать форму для выбора листов
[vba]
Код
Private Sub CommandButton1_Click()
    Me.Hide
    On Error Resume Next
    With Application: .EnableEvents = 0: .ScreenUpdating = 0
        With ActiveSheet.UsedRange
            Intersect(.Cells, .Offset(1)).Delete xlUp
        End With
        With ListBox1
            For i = 0 To .ListCount - 1
                If .Selected(i) Then
                    With ThisWorkbook.Sheets(.List(i)).UsedRange
                        Intersect(.Cells, .Offset(1)).Copy _
                            [A1].Offset(Cells(Rows.Count, 1).End(xlUp).Row)
                    End With
                End If
            Next
        End With
    .EnableEvents = 1: .ScreenUpdating = 1: End With
    Unload Me
End Sub
Private Sub UserForm_Initialize()
    Dim SH As Worksheet
    For Each SH In ThisWorkbook.Sheets
        If Not SH Is ActiveSheet Then Me.ListBox1.AddItem SH.Name
    Next
End Sub
[/vba]
К сообщению приложен файл: 7980843.xlsm (27.5 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеМожно использовать форму для выбора листов
[vba]
Код
Private Sub CommandButton1_Click()
    Me.Hide
    On Error Resume Next
    With Application: .EnableEvents = 0: .ScreenUpdating = 0
        With ActiveSheet.UsedRange
            Intersect(.Cells, .Offset(1)).Delete xlUp
        End With
        With ListBox1
            For i = 0 To .ListCount - 1
                If .Selected(i) Then
                    With ThisWorkbook.Sheets(.List(i)).UsedRange
                        Intersect(.Cells, .Offset(1)).Copy _
                            [A1].Offset(Cells(Rows.Count, 1).End(xlUp).Row)
                    End With
                End If
            Next
        End With
    .EnableEvents = 1: .ScreenUpdating = 1: End With
    Unload Me
End Sub
Private Sub UserForm_Initialize()
    Dim SH As Worksheet
    For Each SH In ThisWorkbook.Sheets
        If Not SH Is ActiveSheet Then Me.ListBox1.AddItem SH.Name
    Next
End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 11.04.2018 в 10:55
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2026 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!