Witaj
Gość

Wątek: Korespondencja seryjna  (Przeczytany 2513 razy)

  • Wiadomości: 947

  • Pochwał: 0

Korespondencja seryjna
« dnia: Marzec 04, 2015, 01:25:01 pm »
Cześć, zajmował się ktoś z Was tym tematem.

Chodzi mi o rozwiązanie np takie problemu.

1. Jest wzór umowy (docx)
2. Jest zrzut z bazy danych np xlsx albo csv
3. Baza zawiera np 800 klientów (NIP) które mają np 1000 budynków. (czyli zdarza się, iż jeden NIP ma 2-3 budynki)
4. Chodzi teraz o to aby w korespondencji seryjnej po wpisaniu NIP wpisała się data, nazwa firmy etc.... i teraz co istotne aby "skrypyt" wyszukał w bazie wszystkie adresy i wkleił np w formie tabeli. [czyli takie wyszukaj pionowo] wszystkie adresy dla danego NIP.

Ktoś coś takie robił? W jakim kierunku iść? w SQL? Macro w Excel? Access? ....



  • *******
  • Wiadomości: 2346

  • Pochwał: 23

Odp: Korespondencja seryjna
« Odpowiedź #1 dnia: Marzec 04, 2015, 06:07:49 pm »
Wszystko da się zrobic :P
VB na pewno można to zrobić. SQLem pewnie też :P Mój SQL albo VB sa na poziomie podstawowym, Accessa nie cierpię więc nie wybrał bym tych narzędzi. A jak u Ciebie z excelem?

To co Ciebie interesuje najbardziej - czyli vlookup z tabelą jako wynik osiągniesz w Excelu przy użyciu funkcji/makropoleceń tablicowych/macierzowych. Pogooglaj sobie i szukaj makropoleceń zawartych w nawiasach klamrowych {}. Efektem działania normalnego vlookupa jest jeden, pierwszy rekord spełniający warunek. Efektem {vlookupa} jest TABELA na której możesz jeszcze robić dodatkowe operacje - chociażby sortowac, wyciągac min/max/ średnia i takie tam pierdoły. W twoim przypadku użyłbyś {vlookup} do znalezienia wszystkich rekordów spełniających Twój warunek, - ten sam NIP i wyświetlenia go w formie tabeli. A potem użycie tej tabeli w korespondencji seryjnej.

Nie wiem, czy to będzie działać, ale ja próbowałbym w tym kierunku :)

Ewentualnie druga wersja - filtrowanie zaawansowane - tam masz możliwość uzyskania podobnego efektu. Tylko żeby toto użyć w korespondencji seryjnej zapewne i tak na końcu trzeba by sie pobawić makropoleceniami, a w ostateczności (dla mnie :P) VB.

Pozdrawiam
« Ostatnia zmiana: Marzec 04, 2015, 06:13:13 pm wysłana przez MastJedi »
Piszę poprawnie po polsku
************************************
Official/Retail NA serv.Hindemith->Phoenix->Chronos-> Naia
Heallweg Iss Enchanter 99 /Siegel Knight 99 /ElementalSummoner80/ HawkEye80  - Clan: Einheit (Nova) Ally: Twilight
Ponadto: Feoh; Aeore; Yul;



  • Wiadomości: 947

  • Pochwał: 0

Odp: Korespondencja seryjna
« Odpowiedź #2 dnia: Marzec 06, 2015, 11:04:19 pm »
Wszystko da się zrobic :P
VB na pewno można to zrobić. SQLem pewnie też :P Mój SQL albo VB sa na poziomie podstawowym, Accessa nie cierpię więc nie wybrał bym tych narzędzi. A jak u Ciebie z excelem?

To co Ciebie interesuje najbardziej - czyli vlookup z tabelą jako wynik osiągniesz w Excelu przy użyciu funkcji/makropoleceń tablicowych/macierzowych. Pogooglaj sobie i szukaj makropoleceń zawartych w nawiasach klamrowych {}. Efektem działania normalnego vlookupa jest jeden, pierwszy rekord spełniający warunek. Efektem {vlookupa} jest TABELA na której możesz jeszcze robić dodatkowe operacje - chociażby sortowac, wyciągac min/max/ średnia i takie tam pierdoły. W twoim przypadku użyłbyś {vlookup} do znalezienia wszystkich rekordów spełniających Twój warunek, - ten sam NIP i wyświetlenia go w formie tabeli. A potem użycie tej tabeli w korespondencji seryjnej.

Nie wiem, czy to będzie działać, ale ja próbowałbym w tym kierunku :)

Ewentualnie druga wersja - filtrowanie zaawansowane - tam masz możliwość uzyskania podobnego efektu. Tylko żeby toto użyć w korespondencji seryjnej zapewne i tak na końcu trzeba by sie pobawić makropoleceniami, a w ostateczności (dla mnie :P) VB.

Pozdrawiam

Excel w sumie jest dość ok ale niestety bez macro : /

Tak czy inaczej dzięki za podpowiedź. Mam co robić :D