Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.01.2012, 00:16   #31
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Пока так.
Не придумал, как сопоставлять овердрафты - просто вывожу в два столбца.
Ещё - номера по порядку нужны?
Вложения
Тип файла: zip work.v2.zip (1.8 Кб, 7 просмотров)
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 10.01.2012 в 01:09.
Hugo121 вне форума Ответить с цитированием
Старый 10.01.2012, 05:10   #32
hammerman
Пользователь
 
Регистрация: 03.01.2012
Сообщений: 33
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Пока так.
Не придумал, как сопоставлять овердрафты - просто вывожу в два столбца.
Ещё - номера по порядку нужны?
Отлично! Уже опробовал. Все на ура!!
Сегодня покатаю еще!
hammerman вне форума Ответить с цитированием
Старый 10.01.2012, 05:12   #33
hammerman
Пользователь
 
Регистрация: 03.01.2012
Сообщений: 33
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Пока так.
Не придумал, как сопоставлять овердрафты - просто вывожу в два столбца.
Ещё - номера по порядку нужны?
Думаю пока с номером по порядку можно подождать.
Да ... отличный script получился.
hammerman вне форума Ответить с цитированием
Старый 10.01.2012, 20:03   #34
hammerman
Пользователь
 
Регистрация: 03.01.2012
Сообщений: 33
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Пока так.
Не придумал, как сопоставлять овердрафты - просто вывожу в два столбца.
Ещё - номера по порядку нужны?
Сегодня погонял Ваш script. Немного изменил его: в части названия листов в файле xls и выводимых столбцов. Не получилось только добавить название колонки L (Сумма операции из файла "счет") на листе карта-счет.
Показал другим. Появилось сразу несколько пожеланий.
1. Можно ли в итоговой таблице xls сделать колонки с датами в формате дата ДД.ММ.ГГГГ?
2. Можно ли в итоговой таблице xls сделать колонки с числовыми значениями в формате дата 999 999.99 или -999 999.99?
3. Есть идея как проверить были суммы овердрафта на возмещение по карте и счету: сравнить по абсолютной величине данные из колонки E с листа "ОВЕРДРАФТ" с данными колонки F с листа "СЧЕТ - КАРТА" и данные из колонки K с листа "ОВЕРДРАФТ" с данными колонки F с листа "КАРТА - СЧЕТ".
Вложения
Тип файла: rar Новые файлы и отчет после их сверки v1.rar (83.6 Кб, 7 просмотров)
hammerman вне форума Ответить с цитированием
Старый 11.01.2012, 00:49   #35
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

1. С форматом колонок пока не очень хорошо - задать можно (весь блок немного иначе переписал):
Код:
    With objExcel.Workbooks.Add(1)
        With .Sheets(1)
            .Name = "КАРТА - СЧЕТ"
            .Range("a1").Resize(, 11) = Split("№ п/п|Дата операции|Дата обработки|Место совершения|Сумма в валюте|Сумма в валюте счета|||Вид|Стат|Дата проведения|Сумма операции", "|")
            .Columns(2).NumberFormat = "dd.mm.yyyy"
            .Columns(3).NumberFormat = "dd.mm.yyyy"
            .Columns(5).NumberFormat = "#,##0.00"
            .Columns(6).NumberFormat = "#,##0.00"
            .Columns(12).NumberFormat = "#,##0.00"
            .Range("b2:f2").Resize(carta_ii) = carta
            .Range("i2").Resize(UBound(c), 4) = c
        End With

        With .Sheets.Add(, .Sheets(.Sheets.Count))
            .Name = "СЧЕТ - КАРТА"
            .Range("a1").Resize(, 11) = Split("№ п/п|Вид|Стат|Дата проведения|Дата совершения|Сумма операции|||Дата операции|Место совершения|Сумма в валюте счета", "|")
            .Range("b2:f2").Resize(scet_ii) = scet
            .Range("i2").Resize(UBound(cc), 3) = cc
        End With

        With .Sheets.Add(, .Sheets(.Sheets.Count))
            .Name = "НЕТ В КАРТЕ ИЛИ СЧЕТЕ"
            .Range("a1").Resize(, 10) = Split("№ п/п|Вид|Стат|Дата проведения|Сумма операции|||№ п/п|Дата операции|Место совершения|Сумма в валюте счета", "|")
            .Range("i2").Resize(r_x, 3) = r
            .Range("b2").Resize(rr_x, 4) = rr
        End With

        With .Sheets.Add(, .Sheets(.Sheets.Count))
            .Name = "ОВЕРДРАФТ"
            .Range("a1").Resize(, 10) = Split("№ п/п|Вид|Стат|Дата проведения|Сумма операции|||№ п/п|Дата операции|Место совершения|Сумма в валюте счета", "|")
            .Range("b2").Resize(ovs_x, 4) = ovs
            .Range("i2").Resize(ovc_x, 3) = ovc
        End With
    End With
И если Эксель русский - то данные правильно преобразуются, но только если им вручную сделать "текст по столбцам - готово".
Из скрипта прописать пока времени нет. Проще сделать всё макросом из-под Экселя - там код можно брать как есть из-под рекордера...
2. Не понял - разделитель разрядов хотите добавить? Тогда см. выше - для первого листа для трёх колонок добавил, и работает.
3. Не смотрел.
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 11.01.2012 в 00:57.
Hugo121 вне форума Ответить с цитированием
Старый 11.01.2012, 05:18   #36
hammerman
Пользователь
 
Регистрация: 03.01.2012
Сообщений: 33
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
1. С форматом колонок пока не очень хорошо - задать можно (весь блок немного иначе переписал):

И если Эксель русский - то данные правильно преобразуются, но только если им вручную сделать "текст по столбцам - готово".
Из скрипта прописать пока времени нет. Проще сделать всё макросом из-под Экселя - там код можно брать как есть из-под рекордера...
2. Не понял - разделитель разрядов хотите добавить? Тогда см. выше - для первого листа для трёх колонок добавил, и работает.
3. Не смотрел.
Прописал разделители. Отлично получилось.
Вот с датой проблемы, ячейки все равно остались в таблице в текстовом формате. Надо встать на нее - нажать редактировать - ввод и только тогда преобразовывается в нормальную ячейку с форматом дата.
Вложения
Тип файла: rar work.v4.rar (1.8 Кб, 9 просмотров)
hammerman вне форума Ответить с цитированием
Старый 11.01.2012, 10:07   #37
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Цитата:
Надо встать на нее - нажать редактировать - ввод и только тогда преобразовывается в нормальную ячейку с форматом дата.
-так про это я и говорил - "текст по столбцам - готово".
Т.е. выделить столбец - "текст по столбцам - готово".
Но всёж лучше выгрузку наладить, чтоб корректно дату выводило - т.к. так получится 21ФЕВ = 21.02.2012
И кстати под английским Экселем тоже нормально в дату преобразует.

А скриптом провернуть это преобразование не получилось - там "текст по столбцам" не получается выполнить, или я просто не умею его заставить...
Можно всё переделать под выполнение как макрос из Экселя - тогда должно получиться.
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 11.01.2012 в 10:19.
Hugo121 вне форума Ответить с цитированием
Старый 11.01.2012, 18:42   #38
hammerman
Пользователь
 
Регистрация: 03.01.2012
Сообщений: 33
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Можно всё переделать под выполнение как макрос из Экселя - тогда должно получиться.
Я не сильно еще Вас одолел?
Насколько это критично все переделать под макрос?
И может тогда проще проверить были ли суммы овердрафта на возмещение по карте и счету (сравнить по абсолютной величине данные из колонки E с листа "ОВЕРДРАФТ" с данными колонки F с листа "СЧЕТ - КАРТА" и данные из колонки K с листа "ОВЕРДРАФТ" с данными колонки F с листа "КАРТА - СЧЕТ")?
hammerman вне форума Ответить с цитированием
Старый 11.01.2012, 18:56   #39
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Да в общем несложно переделать, позже дома гляну.
На сравнение овердрафтов это не влияет - код одинаковый. Но за сравнение ещё не брался, не думал над этим.
Но вот что будете делать с 21ФЕВ - Вы точно уверены, что это было в 2012 году?
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 11.01.2012, 19:43   #40
hammerman
Пользователь
 
Регистрация: 03.01.2012
Сообщений: 33
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Да в общем несложно переделать, позже дома гляну.
На сравнение овердрафтов это не влияет - код одинаковый. Но за сравнение ещё не брался, не думал над этим.
Но вот что будете делать с 21ФЕВ - Вы точно уверены, что это было в 2012 году?
Это колонка с датой совершения операции только на листе "КАРТА - СЧЕТ" и там есть вторая дата, на ктр можно ориентироваться при анализе (будем считать ее уникальной для этой операции, т.к. там есть год).
hammerman вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание приложений для обработки массивов anastasiya__S Помощь студентам 0 07.04.2011 20:18
Макрос обработки данных для Excel 2007 Python Фриланс 1 16.02.2010 20:47
надо: макрос для обработки данных poll69 Microsoft Office Excel 2 06.02.2010 17:25
Сопоставление данных в двух таблицахъъъ Tanuki-sensei Microsoft Office Access 3 22.05.2009 09:25
Сопоставление данных в двух столбцах plasticman Microsoft Office Excel 4 12.03.2009 17:45