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

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

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

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

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

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

Ну тогда осталось:

zaccol = 0 - это если дата=0, что не может быть;
zac не определилось, что тоже вряд ли;

Может лист защищён от изменений?
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 21.06.2010, 10:57   #12
Pao
Пользователь
 
Регистрация: 16.06.2010
Сообщений: 16
По умолчанию

Вот пытаюсь за 15 число перенести данные с помощью макроса
zaccol = 30 колонка правильноя соответствует числу
dt = 15 число тоже правильно
iLastRow = 20 полследняя строка в таблице экспорта правильная
terminal = маг.ХХХ тоже правильно.
zac = той ячейки которой нужно правильно
com = тоже верно
А может быть из-за того что в исходной сводной таблице несколько листов с названиями месяцов, и несколько листов с диаграммами?
Pao вне форума Ответить с цитированием
Старый 21.06.2010, 11:27   #13
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Ну так ведь
ThisWorkbook.Sheets(1). - это копируем в первый по порядку лист, как в примере. У Вас там наверное диаграмма. Напишите вместо 1 название листа в кавычках.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 21.06.2010, 11:49   #14
Pao
Пользователь
 
Регистрация: 16.06.2010
Сообщений: 16
По умолчанию

Нашел ошибку
ThisWorkbook.Sheets(1).Cells(terminal + 4, zaccol).Value = zac 'заносим "Зачислено"
походу он не понимает это выражение так как назмание терминала идет текстом и пишет что это выражение = Type mismatch
Pao вне форума Ответить с цитированием
Старый 21.06.2010, 11:55   #15
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Ну не знаю, например код
Sub tt()
x = [a1]
y = x + 1
End Sub
прекрасно работает, если в А1 число в виде текста. Надо пример видеть.
Если конечно название цифрами, как в примере. Не хотите же Вы сказать, что название буквами написано?
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 21.06.2010, 12:15   #16
Pao
Пользователь
 
Регистрация: 16.06.2010
Сообщений: 16
По умолчанию

Неполучается, чесно скажу я в этом плохо разбираюсь, не могу собразить что я делаю не правильно. В архиве исходная итоговая таблица и несколько файлов из экспорта.
Вложения
Тип файла: rar пример.rar (52.6 Кб, 15 просмотров)
Pao вне форума Ответить с цитированием
Старый 21.06.2010, 12:29   #17
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Цитата:
не могу собразить что я делаю не правильно
- привели неправильный пример.
Теперь надо код переделывать, наверное даже весь. У меня сейчас нет времени, народ, помогайте
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 21.06.2010 в 12:32.
Hugo121 вне форума Ответить с цитированием
Старый 21.06.2010, 12:32   #18
Pao
Пользователь
 
Регистрация: 16.06.2010
Сообщений: 16
По умолчанию

Извиняюсь что не верно выложил пример изначально. Первый раз просто с таким сталкиваюсь.
Pao вне форума Ответить с цитированием
Старый 21.06.2010, 13:50   #19
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Глянул - вообще-то переделок немного:
Код:
Sub export()
dt = Format([General_TODATE], "dd") 'определяем дату отчёта
zaccol = dt * 2 'определяем колонку для записи "Зачислено"
iLastRow = Cells(Rows.Count, 2).End(xlUp).Row 'определяем последнюю строку
terminal = Cells(iLastRow - 1, 5) 'определяем терминал
zac = Cells(iLastRow, 13) 'определяем "Зачислено"
com = Cells(iLastRow, 12) 'определяем "Комиссия"

Set x = ThisWorkbook.Sheets(1).Columns(1).Find(terminal, , , , xlWhole)
If Not x Is Nothing Then
ThisWorkbook.Sheets(1).Cells(x.Row, zaccol).Value = zac   'заносим "Зачислено"
ThisWorkbook.Sheets(1).Cells(x.Row + 1, zaccol + 1).Value = com 'заносим "Комиссия"
End If
End Sub
Но -
Станиславского, 34 м-н Перекресток
и
ул.Станиславского 34 маг.Перекресток

совсем разные названия, согласитесь...
Поэтому такой код не работает, пока названия магазинов не будут всюду одинаковы. Из трёх примеров в двух названия не совпадают.

Можно вот эту часть так написать:
Код:
If Not x Is Nothing Then
ThisWorkbook.Sheets(1).Cells(x.Row, zaccol).Value = zac   'заносим "Зачислено"
ThisWorkbook.Sheets(1).Cells(x.Row + 1, zaccol + 1).Value = com 'заносим "Комиссия"
Else
MsgBox "Not Find!!!"
End If
Тогда будет сразу видно, что это название не найдено.

P.S. А как там - есть пометка "Ответ от*оператора: прием платежа невозможен", и состояние "Отложен", а в общую сумму вошло?

Так, ещё можно добавить определение месяца (аналогично определению даты) и тогда копирование данных не на первый лист ( или какой там сейчас в Вашем коде будет) а именно на лист этого месяца. Но надо тогда или листы переименовать, или в коде добавить через select case соответствие номеров с названиями.
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 21.06.2010 в 14:18.
Hugo121 вне форума Ответить с цитированием
Старый 21.06.2010, 14:35   #20
Pao
Пользователь
 
Регистрация: 16.06.2010
Сообщений: 16
По умолчанию

Огромное спасибо имена терминалов поправил все работает.
Pao вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
сбор данных с разных книг в одну Ledy1987 Microsoft Office Excel 26 20.04.2011 21:33
Сбор данных с множества книг в одну по шаблонам Adeletto Microsoft Office Excel 3 11.06.2010 17:07
Обьединение разных типов даных женя2010 Microsoft Office Excel 3 21.04.2010 12:56
Сбор данных из разных книг 804040 Microsoft Office Excel 2 19.04.2010 15:33
Сбор данных с разных файлов Fess111 Microsoft Office Excel 2 09.03.2010 10:13