< návrat zpět

MS Excel


Téma: EmptyString / Null z Access na Blank v Excel rss

Zaslal/a icon 2.9.2016 21:20

Ahoj,
on to v inom vlákne písal už xlnc (a i eLCHa), že Excel úplne nespolupracuje podľa očakávania s Access pri prevode datových typov, takže neviem, či nasledovné je možné:
Do Excelu chcem nakopírovať výsledok dotazu z Access (prosté copy/paste, ale úplne rovnaké by to bolo i keby som použil datové pripojenie).
V dotaze potrebujem pevnú štruktúru stĺpcov, odpovedajúcu štruktúre stĺpcov v tabuľke v exceli (práve kvôli jednoduchému copy/paste). Potrebujem, aby jeden zo stĺpcov bol prázdny. Na nič iné, než na inštrukciu SELECT "" AS EstimatedSavings, prípadneSELECT NULL AS EstimatedSavings som neprišiel. Tým pádom ale obsah stĺpca nie je prázdny, ale obsahuje nullstrings. Ja by som potreboval, aby bol prázdny. V opačnom prípade, keď to nakopírujem do Excelu, daný stĺpec nie je prázdny, ale obsahuje uvedené nullstrings, čo potom vzorec nevyhodnotí ako číslo, resp. pokiaľ očakáva číslo, tak v danom prípade vyhodnotí ako chybu. Nechcem to riešiť podmienkou vo vzorci, skutočne by som preferoval, keby daná bunka zostala skutočne prázdna. Dá sa nejak?

Zaslat odpověď >

Strana:  1 2   další »
icon #032615
eLCHa
Možná dvě hloupé poznámky v pátek večer a k accessu se dostanu až v pondělí
čo potom vzorec nevyhodnotí ako číslo, resp. pokiaľ očakáva číslo, tak v danom prípade vyhodnotí ako chybu.
Takže v buňce čekáš číslo a buňka má být prázdná - prázdná buňka vrací nulu, tak mně napadáSELECT 0 AS EstimatedSavings
nebo - kopíruješ to předpokládám do tabulky - tvůj sloupec dej na konec (v excelu budeš mít o jeden sloupec více - v dotauze se na něj víš co) - data z access vložíš a tabulka rozšíří včetně tvého nulového sloupce
ale možná to vidím moc jednodušecitovat
icon #032616
avatar
Karle, má to byť nasledovne:
V Exceli v danej bunke potrebujem prázdnu hodnotu. To, čo kopírujem z accessu, je len jedna časť záznamov v tabuľke v exceli. Poviem to inak: tabuľka v Exceli má 1500 riadkov. K nim potrebujem pridať ďalších 500 z Accessu. U tých z Accessu potrebujem, aby EstimatedSavings boli prázdne - proste neexistujú. U tých pôvodných 1500 ale existovať môžu. A potom tu mám vzorec, ktorý vyhodnocuje (mimo iného) hodnotu, zapísanú v stĺpci EstimatedSavings. A ja tam nechcem mať tie nuly zapísané. Pokiaľ je bunka prázdna, vzorec ju vyhodnotí ako bunku s nulovou hodnotou, ale ja tam proste tú nulu zapísanú mať nechcem. Keby tam bola zapísaná nula, nie nullstring, tak by vzorec neskončil chybou, to mi je jasné, ale to nechcem. Proste, pokiaľ EstimatedSavings neexistuje, chcem aby bola daná bunka prázdna, aby v nej nebol ani nullstring (aby som nemusel do vzorca pridávať ďalšiu podmienku), ani nula.
To, čo navrhuješ (SELECT 0), práve tú nulu zapíše..

Tá druhá možnosť - dať daný stĺpec na koniec, neprichádza do úvahy. Je to na dlhé vysvetľovanie, ber to proste ako fakt - stĺpec nemôžem presunúť.

Pokiaľ to neporiešim inak, tak pridám podmienku do vzorca - to som urobil, ale ten spreadsheet už má spústu komplikovaných vzorcov a zdráham sa to ešte viac komplikovať.
Inou možnosťou by bolo manuálne (makrom) odmazať v Exceli tie nullstrings. To sa mi zas nechce z dôvodu, že by som na to musel vždy myslieť, že to mám odstrániť, to už radšej úprava vzorca.
Taktiež by šlo v Accesse ten stĺpec negenerovať. Tým pádom mať o jeden stĺpec menej a vložiť prázdny až v Exceli. To by ale opäť znamenalo, že po copy/paste do Excelu do nejakej pomocnej tabuľky pridať v nej prázdny stĺpec a potom znovu copy/paste. To je ale moc práce, na môj vkus :)citovat
icon #032617
eLCHa
ale ja tam proste tú nulu zapísanú mať nechcem.

;)))
jo jo, tohle znám

pokud nefunguje Null a nechceš použít ani druhý můj geniální nápad, tak jdu dál pít ;))
hezký víkendcitovat
icon #032618
avatar
jj, vďaka za snahu pomôcť, pekný víkend i Tebe :)citovat
#032621
avatar
@AL

Ahoj, koukni na můj poslední příspěvek ve vlákně "Makro vzorec - Finanční odměna za vytvoření " jestli by jsi to nevyužil. Myslím, že by to mohlo vracet true na test fce ISBLANK true jak pro NullString tak i NULL hodnotu.

Je to DAO, takže bys to mohl volat automaticky, pokud to rozchodíš. Nevím jestli je pro tebe užitečné.citovat
#032624
MePExG
Na odstránenie textu null sa dá použiť Hľadať a nahradiť Ctrl+H s tým, že do políčka nahradiť nič nezadáte a použijete voľbu všetko. Je to bez programovania.
Ináč nechápem potrebu prenášať údaje z Accessu cez schránku, keď Excel dokáže načítavať priamo z Accessových tabuliek.
A už vôbec nechápem prečo používať Access, keď Excel má PowerQuery a PowerPivot. Ich pomocou bežne spracujem a analyzujem (v Exceli) tabuľky (z SQL) aj so 115 miliónmi riadkami (veľkosť výstupného súboru 750MB) a dokáže načítavať údaje zo všetkých zdrojov dostupných údajov a rôzne ich spracovať (z jeden tabuľky viac a naopak), skombinovať (napr. SQL, Excel, web), prepojiť a podľa požiadaviek vyhodnocovať.citovat
#032625
avatar
mepexg-u nechápete rozdíl mezi ukládáním dat do databáze a listu excelu? Má excel datové typy nebo formáty? Co typová kontrola, ověření, normalizace, lock-managemnt atd..? Že by ti hloupí IŤáci měli místo databází raději používat kalkulátor?

Ano, známe Power nástroje - nejsou důvod k tomu, začít ukládat velké množství dat do excelu.

Rozdíl mezi nativními nástroji a automatizací je snad jasný.

Mohl byste pro méně chápavé, jako jsem já, znovu vysvětlit to nahrazení pomocí dialogu najít a nahradit?

Co zadám do najít a co do nahradit? A kde vyberu možnost vše? Díky :)citovat
#032627
MePExG
Mimochodom aj ja celý život pracujem s počítačmi (technik, programátor a analytik) a viem čo sa dá naprogramovať a čo umožňuje Excel.
Ale k riešeniu. Keď údaje vložíte do listu, stlačíte Ctrl+H a vyplníte a použijete túto funkciu podľa priloženého obrázku.
Příloha: png32627_nahrad.png (5kB, staženo 27x)
32627_nahrad.png
citovat
#032628
avatar
Gratuluji!

V accessu jsem si vytvořil tabulku, kde v jsem do jednoho sloupce vložil hodnotu null a do dalšího řádku NullString. Jak popisuje AL, použil jsem copy&paste do excelu, vybral předmětné buňky, vyvolal dialog najít a nahradit a do pole nají jsem vložil null a do nahradit nic. No, mě to podle testu isblank nepomohlo.

To co by ve skutečnosti mohlo pomoci je:

1. Úpravy a nahradit - najít nic a nahradit např ~~
2. Úpravy a nahradit - najít ~~ a nahradit niccitovat
icon #032638
eLCHa
@AL
Do Excelu chcem nakopírovať výsledok dotazu z Access (prosté copy/paste, ale úplne rovnaké by to bolo i keby som použil datové pripojenie).

Udělal jsem pár krátkých testů a není to to samé.
Pokud kopíruješ manuálně, tak sloupec není prázdný, jak píšeš (JE.TEXT vrací PRAVDA).
Pokud provedeš import dat (připojení), tak prázdná je. Funkce JE.PRÁZNÉ vrací PRAVDA.

Access 2010citovat

Strana:  1 2   další »

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje