например, мне нужно сложить все суммы по строкам, содержащим название "яблоки" и код "11". в самой таблице-источнике название может быть "яблоки зелёные" или "яблоки красные", а к коду добавляются ещё цифры-индификаторы, например "11+1"
и пока получилось сделать так =СУММЕСЛИМН($I:$I;$H:$H;"=*11* ";$H:$H;"=**яблоки*" .
Каким хитрым образом можно в формуле в критерии поиска указать искомый текст именно формулой, дабы не печатать каждое название и код?
Пример прикрепить не удаётся, поэтому с вашего позволения добавлю сюда
например, мне нужно сложить все суммы по строкам, содержащим название "яблоки" и код "11". в самой таблице-источнике название может быть "яблоки зелёные" или "яблоки красные", а к коду добавляются ещё цифры-индификаторы, например "11+1"
и пока получилось сделать так =СУММЕСЛИМН($I:$I;$H:$H;"=*11* ";$H:$H;"=**яблоки*" .
Каким хитрым образом можно в формуле в критерии поиска указать искомый текст именно формулой, дабы не печатать каждое название и код?
Пример прикрепить не удаётся, поэтому с вашего позволения добавлю сюда В этой таблице в поле сумма находится формула
Подскажите пожалуйста решение проблемы. Требуется в определенной папке с вложенными подпапками найти все файлы, начинающиеся с "Счет", последовательно открыть каждый, произвести определенные действия и закрыть, затем следующий файл и т.д. Макрос ниже производит всё это только с файлами в первой папке, не заходя во вложенные. Как научить эксел проверять вложенные папки?
Sub Dir_() Dim v_Path As String, v_FileName As String, v_Mask As String v_Path = "C:\Documents and Settings\batyuksv\Мои документы\00\" v_iFileName = Dir(v_Path, 7) v_Mask = "Счет" Do While v_iFileName <> "" If Left(v_iFileName, 4) = v_Mask Then _ Workbooks.Open v_Path & v_iFileName ' ляляляля ActiveWindow.Close v_iFileName = Dir Loop End Sub
При копировании из САПа у отрицательных чисел минус стоит после числа, например 256,093-. Сделал макрос по переносу минуса перед числом.
Sub ПереносМинусовSAP() Dim i As Variant Dim InRange As Range, cell As Range Set InRange = Selection 'предварительно выделенный диапазон On Error Resume Next For Each cell In InRange ' i = cell.Formula If Right(i, 1) = Chr$(45) Then i = "-" & Left(i, Len(i) - 1) End If cell.Formula = i Next cell End Sub
Но не со всеми числами данный макрос работает коррекно. В прикрепленном файле запустите макрос на выделении: 256,093- превратится в -256093,00. В чем проблема?
Добрый день! С наступившим! Как в VBA реализовать что-то вроде промежуточных итогов при каждом изменении номера платежного поручения (см прикрепленный файл)? Причем колонки с накладными должны остаться в первоначальном виде. Никак не могу придумать алгоритм.