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

Страницы: 1
Оборотно-сальдовая ведомость. Обработка VBA
 
Приветствую, коллеги подскажите, может у кого есть более рациональное решение.
На картинках привел пример одного из вариантов ОСВ в Excel. Работать с таким форматом крайне не удобно, надо перестроить таблицу в массив в vba и затем вывести нужный вид, проблема в правильном считывании строк.

Я в названии файла обязательно задаю номер счета (в примере 60). VBA по столбцу с контрагентами сверху вниз ищет, где строка начинается на 60. Признаю содержимое этой строки номером счета. Далее в следующей строке, если она не начинается на 60, то начинается список контрагентов по этому субсчету, если начинается на 60, то перезаписываю переменную номер счета. и т.д. пока не дойдет до конца таблицы.

В случае, если ОСВ не разбита на субсчета, в ней вообще может отсутствовать номер счета, тогда непонятно, как найти, где в столбце начало списка контрагентов - хочу в этом случае выводить окно пользователю для ввода номера строки начала.

Плюс сохраняется проблема в считывании строки ИТОГО, ее не надо считывать, но наименования в разных версиях могут быть разные.

Соответственно задача состоит в том, чтобы правильно считать номер субсчета, список контрагентов и избежать считывания сальдо и оборотов по номеру счета и итоговой строке.

Файлы удалены: превышение допустимого размера вложения [МОДЕРАТОР]
Изменено: Boris05036 - 24.05.2018 09:47:44
VBA: переход внутри ячейки на новую строку с помощью alt+enter
 
Доброго времени суток!

На листе в ячейке A1 запись в две строки. При ее записи весь текст сливается в одну строчку.
Как сделать так, чтобы сохранить данные построчно.... может быть в массиве? а затем после обработки вставить в другую ячейку в таком же виде в две строки обратно...
ГПР (HLOOKUP) в VBA выдает ошибку
 
Доброго времени суток, может кто-нибудь объяснить, почему формула в эксель "=ГПР(A1;A2:H100;2;ЛОЖЬ)" работает и выдает верный результат, а строка vba
Код
a = Application.HLookup(A1, otch.Range("A2:H100"), 2, False)
выдает a = Error 2042?
Если что, A1 - дата (например, 01.01.2017)
Сортировка по дате в массиве type statement
 
Доброго времени суток, имею массив в таком виде
Код
public type oper()
dat as date
d as double
c as double
end type

необходимо отсортировать записанный массив по type().dat, каким путем это лучше осуществить?
нашел кучу вариантов, но никак не могу понять, какой лучше и насколько все это применимо к type statement...
Преобразование текстового формата даты в числовой в vba
 
Доброго времени суток! Форумчане, уже мозг взорвался, перепробовал несколько методов, предложенных когда-то на разных форумах.
В файле вырезал нужный кусок. Сделать надо именно в vba, т.к. это часть макроса... из-за этого он некорректно проводит сортировку по дате.
верхние даты скопированы из одного файла, нижние из другого, поэтому оказалось, что вверху текстовый формат, внизу числовой формат даты...
Расчет через цикл в цикле (for - next)
 
Доброго времени суток! Недавно начал заниматься с vba, так что с трудными задачами возникают большие трудности.
В 1 колонке дата, в 11 сумма, в 12 сумма, в 14 дата, которую надо заполнить. Необходимо, найти в колонке 12 сумму больше либо равно сумме в 11 и записать дату из найденной строки (колонка 1) в исходную строку в колонке 14. И так для каждого значения в колонке 11.

Вот мой код, в которому сразу есть какая-то ошибка, не очень понимаю, как исправить, возможно, что он вообще не заработает.
Код
Dim k As Integer, l As Integer, m As Date
    Set R = Range(Cells(2, 12), Cells(LastRow, 12))
    For i = 2 To LastRow Step 1
        For l = 2 To LastRow Step 1
            If l1.Cells(i, 11) <= R(l) Then
            k = R(l).Row
            GoTo cont
        Next l
cont:
    m = l1.Cells(k, 1)
    l1.Cells(i, 14).Value = m
    Next i
Изменено: Boris05036 - 28.06.2016 16:09:08
Массовое изменение файлов, VBA, макрос
 
Доброго времени суток, извиняюсь, если был уже вопрос такой, я не нашел на форуме. Я начинающий пользователь макросов, поэтому данная необходимость стала для меня подводным камнем...
Как прописать в макросе массовое изменение файлов?
у меня уже написан код для одного файла... открывается новый шаблон, открывается старый  файл, из старого копируется в шаблон инфа в новую форму, файл сохраняется рядом и закрывается
Вопрос: как сделать, что макрос делал это последовательно для всех файлов, которые около него лежат в папке и перемещал старые версии в одну папку, новые в другую?
Заранее спасибо
Пароль на VBA, пароль
 
Доброго времени суток! Подскажите, как поставить пароль на код VBA в файле Excel? на windows просто, а на mac непойму никак... версия экселя 15.18
Страницы: 1
Наверх