Из Access в Excel и обратно Access

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
alex shestov
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 109
Зарегистрирован: 25.04.2005 (Пн) 12:01

Из Access в Excel и обратно Access

Сообщение alex shestov » 19.05.2005 (Чт) 14:15

Возможноли реализовать:
В Аксесе делаем выборку по нужным полям, эти данные скидываем в Эксель, там выполняем макрос с методом Поиск решения а дальше полученное значение возвращаем в Аксес для дальнейшей работы.

Хочеться максимально автоматизировать процесс и чтобы Эксель после всех процедур закрывался а макросы по Поиску решения сохранялись и не происходила замена их при импорте новых данных.

Alex_2005
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 242
Зарегистрирован: 07.04.2005 (Чт) 17:09
Откуда: Germany, Baden-Wurttemberg, Bietigheim-Bissingen

Сообщение Alex_2005 » 19.05.2005 (Чт) 14:46

Реализовать возможно всё... только к чему это? Имхо намного проще всё самому сделать, в своей программе, кодом, намного быстрее и легче. Я тут недавно программку сделал для обработки данных из Ексел, скажу честно, проклинал его...
Guten Morgen! А если не Guten, то тогда это и не Morgen...

alex shestov
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 109
Зарегистрирован: 25.04.2005 (Пн) 12:01

Сообщение alex shestov » 19.05.2005 (Чт) 14:53

Alex_2005 писал(а):Реализовать возможно всё... только к чему это? Имхо намного проще всё самому сделать, в своей программе, кодом, намного быстрее и легче. Я тут недавно программку сделал для обработки данных из Ексел, скажу честно, проклинал его...


Да просто я уже несколько дне парюсь, мне нужно расчитать доходность к погашению, а как реализовать это силами Access и VB. В Аксесе нет метода - Подбор значения. А времени у меня не так много на то чтоб понять как его можно реализовать - вот и решил сделать пока таким образом.

Хотя если вы знаете как решить нелинейное уравнение в VB, я был бы очень признателен за помощь.

alex shestov
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 109
Зарегистрирован: 25.04.2005 (Пн) 12:01

Сообщение alex shestov » 19.05.2005 (Чт) 14:55

Alex_2005 писал(а):Реализовать возможно всё... только к чему это? Имхо намного проще всё самому сделать, в своей программе, кодом, намного быстрее и легче. Я тут недавно программку сделал для обработки данных из Ексел, скажу честно, проклинал его...


А как примерно будет выглядеть реализация по расчету в Экселе и обратно?

Igor_123
Осторожный Баянист
Осторожный Баянист
Аватара пользователя
 
Сообщения: 1325
Зарегистрирован: 21.07.2004 (Ср) 13:00
Откуда: Днепропетровск

Сообщение Igor_123 » 19.05.2005 (Чт) 15:07

Alex_2005
А чего проклинать??? :shock:

Все замечательно работает. Без всяких проблем. Если сам не непортачил, проблемы появляються очень и очень редко.

alex shestov
Создать объект екселя
открыть/создать книгу
занести данные
выполнить операции
забрать данные
все закрыть.

Причем в екселе можно записать макрос, потом подправить код на предмет смены исполнителя(Если в макросе будет ActiveSheet, то из др. приложения будет ExelApp.ActiveSheet)
Сейчас нет под рукой кода, завтра принесу
Водки я вам не обещаю, но погуляем хорошо.
И. Сусанин.

Аватара (с) Тёмыч

Alex_2005
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 242
Зарегистрирован: 07.04.2005 (Чт) 17:09
Откуда: Germany, Baden-Wurttemberg, Bietigheim-Bissingen

Сообщение Alex_2005 » 19.05.2005 (Чт) 15:14

Igor_123 писал(а):Alex_2005
А чего проклинать??? :shock:

Все замечательно работает. Без всяких проблем. Если сам не непортачил, проблемы появляються очень и очень редко.


Да я и не говорил, что работает плохо... только что медленней... намноого медленне чем Access. От тыщ 20 разница чувствуется очень сильно... да и проще с Access. :wink:
Guten Morgen! А если не Guten, то тогда это и не Morgen...

Igor_123
Осторожный Баянист
Осторожный Баянист
Аватара пользователя
 
Сообщения: 1325
Зарегистрирован: 21.07.2004 (Ср) 13:00
Откуда: Днепропетровск

Сообщение Igor_123 » 19.05.2005 (Чт) 15:23

Alex_2005
Ха, нашёл чего сравнивать, Access - СУБД, а Excel - для анализа данных. Просто не зная и не умея работать с СУБД, люди хотят от Excel возможностей СУБД, и решаеться это через ж*у, и работают, и говорят, что плохо работает!
Водки я вам не обещаю, но погуляем хорошо.
И. Сусанин.

Аватара (с) Тёмыч

alex shestov
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 109
Зарегистрирован: 25.04.2005 (Пн) 12:01

Сообщение alex shestov » 19.05.2005 (Чт) 15:29

Igor_123 писал(а):Alex_2005
Ха, нашёл чего сравнивать, Access - СУБД, а Excel - для анализа данных. Просто не зная и не умея работать с СУБД, люди хотят от Excel возможностей СУБД, и решаеться это через ж*у, и работают, и говорят, что плохо работает!


Игорь, подскажи, как человек опытный, как реализовать метод Подбор данных в Аксесе? Если это вообще возможно?

Alex_2005
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 242
Зарегистрирован: 07.04.2005 (Чт) 17:09
Откуда: Germany, Baden-Wurttemberg, Bietigheim-Bissingen

Сообщение Alex_2005 » 19.05.2005 (Чт) 15:31

Igor_123
Ну чтож ты разругался так а? Да ладно, как буд - то на этом свет клином сошёлся! Здорово, что у тебя достаточно опыта и знаний, для решения задач средствами Ексел! Так что я уверен, что парню этому поможешь. :wink:

Кстати ты абсолютно и стопроцентно прав, вот поэтому и проще(для меня), сделать свой собственный анализ данных, не используя готовые шаблоны Ексел.
Guten Morgen! А если не Guten, то тогда это и не Morgen...

alex shestov
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 109
Зарегистрирован: 25.04.2005 (Пн) 12:01

Сообщение alex shestov » 19.05.2005 (Чт) 15:35

Alex_2005 писал(а):Igor_123
Ну чтож ты разругался так а? Да ладно, как буд - то на этом свет клином сошёлся! Здорово, что у тебя достаточно опыта и знаний, для решения задач средствами Ексел! Так что я уверен, что парню этому поможешь. :wink:

Кстати ты абсолютно и стопроцентно прав, вот поэтому и проще(для меня), сделать свой собственный анализ данных, не используя готовые шаблоны Ексел.


Да да!!! Я тоже надеюсь что поможет :)

Alex_2005
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 242
Зарегистрирован: 07.04.2005 (Чт) 17:09
Откуда: Germany, Baden-Wurttemberg, Bietigheim-Bissingen

Сообщение Alex_2005 » 19.05.2005 (Чт) 15:40

Поможет поможет, не переживай! Такие матёрые волки VB так просто свои слова на ветер не бросают! :D
Guten Morgen! А если не Guten, то тогда это и не Morgen...

Alex_2005
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 242
Зарегистрирован: 07.04.2005 (Чт) 17:09
Откуда: Germany, Baden-Wurttemberg, Bietigheim-Bissingen

Сообщение Alex_2005 » 19.05.2005 (Чт) 15:48

Кстати, пока Игорь не видит.... и пока ущё не надумал, как можно помочь, попробуй пока с Акцес. Сделай сначал опрос нужных полей при помощи SQL . Потом вводи данные в... скажем таблицу. можешь использовать MSHFlexGrid ну а дальше пишешь функцию для расцёта данных. И в конце сохраняешь всё снова. Если не понял чего или незнаешь как сделать, то скажи, поможем...
Guten Morgen! А если не Guten, то тогда это и не Morgen...

alex shestov
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 109
Зарегистрирован: 25.04.2005 (Пн) 12:01

Сообщение alex shestov » 19.05.2005 (Чт) 15:57

Alex_2005 писал(а):Кстати, пока Игорь не видит.... и пока ущё не надумал, как можно помочь, попробуй пока с Акцес. Сделай сначал опрос нужных полей при помощи SQL . Потом вводи данные в... скажем таблицу. можешь использовать MSHFlexGrid ну а дальше пишешь функцию для расцёта данных. И в конце сохраняешь всё снова. Если не понял чего или незнаешь как сделать, то скажи, поможем...


Примерно понял как делать но проблема в том что при расчете идет ссылка на значение, которое изначально не известно. И получается только подбором. Вот почему я и спросил как реализовать из Акс в Экс, чтоб там осуществить подбор а потом результат скинуть обратно.

Если знаешь как сделать это в SQL - колись :)

На форуме Банкир кто-то выкладывал данный метод:
' НКД подсчитали, и может быть, теперь начинаем подбирать доходность
Dohodnost = 16
Step = 8
' методом последовательного приближения, начинаем от 16%, с первым шагом 8%
' при каждом цикле режем шаг пополам
Do
CalcPrice = 0
For Cycle = 0 To Num - CurCoupon - 1

Но если честно - я ничего не понял, как он работает вообще. Я задал вопрос, но ответа пока не было.

Alex_2005
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 242
Зарегистрирован: 07.04.2005 (Чт) 17:09
Откуда: Germany, Baden-Wurttemberg, Bietigheim-Bissingen

Сообщение Alex_2005 » 19.05.2005 (Чт) 16:02

в SQL это сделать не сможешь, он только таблицы опрашивает. А вот у меня тоже немного непонятка: что ты имеешь в виду под "осуществить подбор"?
Guten Morgen! А если не Guten, то тогда это и не Morgen...

alex shestov
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 109
Зарегистрирован: 25.04.2005 (Пн) 12:01

Сообщение alex shestov » 19.05.2005 (Чт) 16:10

Alex_2005 писал(а):в SQL это сделать не сможешь, он только таблицы опрашивает. А вот у меня тоже немного непонятка: что ты имеешь в виду под "осуществить подбор"?


В Экс есть встроенный метод Подбор параметра. Когда известен результат но не известно на что нужно умножить чтоб этот результат получить - вот тут он как раз и пригождается. Для решения простых нелинейных уравнений очень удобно.

Вот это я о чем.

Alex_2005
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 242
Зарегистрирован: 07.04.2005 (Чт) 17:09
Откуда: Germany, Baden-Wurttemberg, Bietigheim-Bissingen

Сообщение Alex_2005 » 19.05.2005 (Чт) 16:22

Слушай, что то я действительно не могу врубиться в этот подбор, помоги с ним разобраться мне. На основании чего он делает этот подбор? К примеру тебя поле со значением 100, и что дальше? Как он вычесляет откудо взялось это сто? Сравнивает суммы (или что то там ещё ) дригих полей ?
Если не лень ,объясни поподробней тугодуму, мне самому стало интересно!
Guten Morgen! А если не Guten, то тогда это и не Morgen...

Igor_123
Осторожный Баянист
Осторожный Баянист
Аватара пользователя
 
Сообщения: 1325
Зарегистрирован: 21.07.2004 (Ср) 13:00
Откуда: Днепропетровск

Сообщение Igor_123 » 19.05.2005 (Чт) 16:24

Так alex's!!! я все вижу :wink:

alex shestov дай хоть пример данных для которых подбирать параметр надо.

Alex_2005 SQL не только таблицы опрашивает, но не в Accesse. :wink:
Водки я вам не обещаю, но погуляем хорошо.
И. Сусанин.

Аватара (с) Тёмыч

Alex_2005
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 242
Зарегистрирован: 07.04.2005 (Чт) 17:09
Откуда: Germany, Baden-Wurttemberg, Bietigheim-Bissingen

Сообщение Alex_2005 » 19.05.2005 (Чт) 16:32

Igor_123 писал(а):Так alex's!!! я все вижу :wink:

alex shestov дай хоть пример данных для которых подбирать параметр надо.

Alex_2005 SQL не только таблицы опрашивает, но не в Accesse. :wink:

да да,,. вот что значит неправильная формулировка...!!! :cry:
Guten Morgen! А если не Guten, то тогда это и не Morgen...

alex shestov
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 109
Зарегистрирован: 25.04.2005 (Пн) 12:01

Сообщение alex shestov » 19.05.2005 (Чт) 16:37

Igor_123 писал(а):Так alex's!!! я все вижу :wink:

alex shestov дай хоть пример данных для которых подбирать параметр надо.

Alex_2005 SQL не только таблицы опрашивает, но не в Accesse. :wink:


сейчас попробую табличку прилепить простенькую - чтоб было немного понятно.
Вложения
doxod.rar
(1.77 Кб) Скачиваний: 24

Alex_2005
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 242
Зарегистрирован: 07.04.2005 (Чт) 17:09
Откуда: Germany, Baden-Wurttemberg, Bietigheim-Bissingen

Сообщение Alex_2005 » 19.05.2005 (Чт) 16:43

Так что у тебя тут было, а что подобранно? :?:
Guten Morgen! А если не Guten, то тогда это и не Morgen...

Igor_123
Осторожный Баянист
Осторожный Баянист
Аватара пользователя
 
Сообщения: 1325
Зарегистрирован: 21.07.2004 (Ср) 13:00
Откуда: Днепропетровск

Сообщение Igor_123 » 19.05.2005 (Чт) 16:46

Alex_2005 Да ладно! Хотя как мне однажды сказали "Не балуйся с терминами"
Но даже в Акцесе при помощи SQL создаються таблицы.
А на SQL-серверах там вообще "хавайся".
Я на Интербейсе реализовал, ХП, тарификацию звонков.
На MSSQL-server я видел код на T-SQL для получения суммы прописью.
И этот так десткий сад. :D
Водки я вам не обещаю, но погуляем хорошо.
И. Сусанин.

Аватара (с) Тёмыч

alex shestov
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 109
Зарегистрирован: 25.04.2005 (Пн) 12:01

Сообщение alex shestov » 19.05.2005 (Чт) 16:48

Alex_2005 писал(а):Так что у тебя тут было, а что подобранно? :?:


Упс...ща. :(:(:(

alex shestov
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 109
Зарегистрирован: 25.04.2005 (Пн) 12:01

Сообщение alex shestov » 19.05.2005 (Чт) 16:54

вота
Вложения
doxod.rar
(2.76 Кб) Скачиваний: 23

Igor_123
Осторожный Баянист
Осторожный Баянист
Аватара пользователя
 
Сообщения: 1325
Зарегистрирован: 21.07.2004 (Ср) 13:00
Откуда: Днепропетровск

Сообщение Igor_123 » 19.05.2005 (Чт) 17:00

Где-то, совсем недавно я уже видел эти данные, только надо было вывести формулу для расчета
Водки я вам не обещаю, но погуляем хорошо.
И. Сусанин.

Аватара (с) Тёмыч

alex shestov
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 109
Зарегистрирован: 25.04.2005 (Пн) 12:01

Сообщение alex shestov » 19.05.2005 (Чт) 17:04

Igor_123 писал(а):Где-то, совсем недавно я уже видел эти данные, только надо было вывести формулу для расчета


Я знаю даже кто эти данные вводил ;)

Формулу я получил, теперь нужно все это автоматизаровать и будет счастье.

Igor_123
Осторожный Баянист
Осторожный Баянист
Аватара пользователя
 
Сообщения: 1325
Зарегистрирован: 21.07.2004 (Ср) 13:00
Откуда: Днепропетровск

Сообщение Igor_123 » 19.05.2005 (Чт) 17:43

alex shestov а какое значение надо вернуть???
Водки я вам не обещаю, но погуляем хорошо.
И. Сусанин.

Аватара (с) Тёмыч

Igor_123
Осторожный Баянист
Осторожный Баянист
Аватара пользователя
 
Сообщения: 1325
Зарегистрирован: 21.07.2004 (Ср) 13:00
Откуда: Днепропетровск

Сообщение Igor_123 » 19.05.2005 (Чт) 18:26

Замахался я с этим акцесом. Кошмар когда не знаешь и лезеш, ещё и справки нет. Блин!

В общем вот, там надо сделать рекордсет, запрос там есть, ну и проверить индексы.
Вложения
db1.rar
В общем вот
(23.6 Кб) Скачиваний: 19
Водки я вам не обещаю, но погуляем хорошо.
И. Сусанин.

Аватара (с) Тёмыч

alex shestov
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 109
Зарегистрирован: 25.04.2005 (Пн) 12:01

Сообщение alex shestov » 20.05.2005 (Пт) 8:00

Igor_123 писал(а):alex shestov а какое значение надо вернуть???


Правильное значение в ячейке H3 - 8,366

Igor_123
Осторожный Баянист
Осторожный Баянист
Аватара пользователя
 
Сообщения: 1325
Зарегистрирован: 21.07.2004 (Ср) 13:00
Откуда: Днепропетровск

Сообщение Igor_123 » 20.05.2005 (Пт) 10:18

А я тебе обновляю столбец на данные
Как оно, я же переживаю!!!
Водки я вам не обещаю, но погуляем хорошо.
И. Сусанин.

Аватара (с) Тёмыч

alex shestov
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 109
Зарегистрирован: 25.04.2005 (Пн) 12:01

Сообщение alex shestov » 20.05.2005 (Пт) 10:26

Igor_123 писал(а):А я тебе обновляю столбец на данные
Как оно, я же переживаю!!!


Ага - вижу. :)

Сейчас доделаю и посмотрим что получиться. Пока затычка на метода MoveFirst. и в Экс не приходят данные

След.

Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 168

    TopList