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

Вход

Регистрация

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

 

= Мир MS Excel/Заменить макросом функцию "СУММЕСЛИМН" - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Заменить макросом функцию "СУММЕСЛИМН"
Заменить макросом функцию "СУММЕСЛИМН"
Alex7240 Дата: Пятница, 14.05.2021, 15:46 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 20% ±

Добрый день. Помогите заменить макросом функцию "суммеслимн".
Листы "база" и "отчет" находятся в разных книгах.
В книге "отчет" даты вставляет другой макрос. (он запускается первым)
Макрос должен вставлять литры в зависимости от даты (даты в базе идут не по порядку)
К сообщению приложен файл: 2679380.xlsx (9.7 Kb)
 
Ответить
СообщениеДобрый день. Помогите заменить макросом функцию "суммеслимн".
Листы "база" и "отчет" находятся в разных книгах.
В книге "отчет" даты вставляет другой макрос. (он запускается первым)
Макрос должен вставлять литры в зависимости от даты (даты в базе идут не по порядку)

Автор - Alex7240
Дата добавления - 14.05.2021 в 15:46
Kuzmich Дата: Пятница, 14.05.2021, 18:26 | Сообщение № 2
Группа: Проверенные
Ранг: Ветеран
Сообщений: 711
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
При активном листе отчет запустить макрос
[vba]
Код
Sub SumLitr()
Dim i As Long
Dim iLastRow As Long
Dim iLR As Long
iLastRow = Cells(Rows.Count, 1).End(xlUp).Row
Range("D3:D" & iLastRow).ClearContents
With Worksheets("база")
    iLR = .Cells(.Rows.Count, 1).End(xlUp).Row
  For i = 3 To iLastRow
    Cells(i, "D") = Application.WorksheetFunction.SumIf(.Range("A2:A" & iLR), Cells(i, "A"), .Range("C2:C" & iLR))
  Next
End With
End Sub
[/vba]
 
Ответить
СообщениеПри активном листе отчет запустить макрос
[vba]
Код
Sub SumLitr()
Dim i As Long
Dim iLastRow As Long
Dim iLR As Long
iLastRow = Cells(Rows.Count, 1).End(xlUp).Row
Range("D3:D" & iLastRow).ClearContents
With Worksheets("база")
    iLR = .Cells(.Rows.Count, 1).End(xlUp).Row
  For i = 3 To iLastRow
    Cells(i, "D") = Application.WorksheetFunction.SumIf(.Range("A2:A" & iLR), Cells(i, "A"), .Range("C2:C" & iLR))
  Next
End With
End Sub
[/vba]

Автор - Kuzmich
Дата добавления - 14.05.2021 в 18:26
Alex7240 Дата: Суббота, 15.05.2021, 14:15 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 20% ±

спасибо
 
Ответить
Сообщениеспасибо

Автор - Alex7240
Дата добавления - 15.05.2021 в 14:15
Alex7240 Дата: Среда, 09.06.2021, 15:52 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 20% ±

если "база" находится в другой книге?
 
Ответить
Сообщениеесли "база" находится в другой книге?

Автор - Alex7240
Дата добавления - 09.06.2021 в 15:52
RAN Дата: Среда, 09.06.2021, 17:39 | Сообщение № 5
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
[vba]
Код
With Workbooks("Другая Книга.xlsx").Worksheets("база")
[/vba]
А ежели она закрыта, то еще и открытьие в код добавить.


Быть или не быть, вот в чем загвоздка!

Сообщение отредактировал RAN - Среда, 09.06.2021, 17:40
 
Ответить
Сообщение[vba]
Код
With Workbooks("Другая Книга.xlsx").Worksheets("база")
[/vba]
А ежели она закрыта, то еще и открытьие в код добавить.

Автор - RAN
Дата добавления - 09.06.2021 в 17:39
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Заменить макросом функцию "СУММЕСЛИМН"
  • Страница 1 из 1
  • 1
Поиск:

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