Pastaba
Prieigai prie šio puslapio reikalingas įgaliojimas. Galite bandyti prisijungti arba pakeisti katalogus.
Prieigai prie šio puslapio reikalingas įgaliojimas. Galite bandyti pakeisti katalogus.
Nors "Excel" veiksmai gali apdoroti daugumą "Excel" automatizavimo scenarijų, SQL užklausos gali efektyviau nuskaityti ir manipuliuoti dideliais "Excel" duomenų kiekiais.
Tarkime, kad srautas turi modifikuoti tik tuos "Excel" registrus, kuriuose yra tam tikra reikšmė. Norint pasiekti šią funkciją be SQL užklausų, jums reikia ciklų, sąlygų ir kelių "Excel" veiksmų.
Arba galite įdiegti šią funkciją su SQL užklausomis, naudodami tik du veiksmus: atidaryti SQL ryšį ir vykdyti SQL sakinius.
SQL ryšio su "Excel" failu atidarymas
Prieš paleisdami SQL užklausą, turite atidaryti ryšį su "Excel" failu, kurį norite pasiekti.
Norėdami užmegzti ryšį, sukurkite naują kintamąjį pavadinimu %Excel_File_Path% ir inicijuokite jį naudodami "Excel" failo kelią. Pasirinktinai galite praleisti šį veiksmą ir vėliau sraute naudoti užprogramuotą failo kelią.
Dabar įdiekite veiksmą Open SQL connection ir jo ypatybėse užpildykite šią jungimosi eilutę.
Teikėjas=Microsoft.ACE.OLEDB.12.0; duomenų šaltinis=%Excel_File_Path%; išplėstinės ypatybės="Excel 12.0 xml;HDR=YES";
Pastaba.
Norėdami sėkmingai naudoti pateiktą jungimosi eilutę, turite atsisiųsti ir įdiegti "Microsoft Access Database Engine 2010 Redistributable".
SQL ryšio su slaptažodžiu apsaugotu "Excel" failu atidarymas
Kitoks metodas reikalingas tais atvejais, kai SQL užklausas vykdote slaptažodžiu apsaugotuose "Excel" failuose. Veiksmas Atidaryti SQL ryšį negali prisijungti prie slaptažodžiu apsaugotų "Excel" failų, todėl turite pašalinti apsaugą.
Norėdami tai pasiekti, paleiskite "Excel" failą naudodami veiksmą Paleisti "Excel ". Failas yra apsaugotas slaptažodžiu, todėl lauke Slaptažodis įveskite atitinkamą slaptažodį .
Tada įdiekite atitinkamus vartotojo sąsajos automatizavimo veiksmus ir eikite į Failo>informacija>Apsaugokite darbaknygės>šifravimą slaptažodžiu. Daugiau informacijos apie vartotojo sąsajos automatizavimą ir kaip naudoti atitinkamus veiksmus galite rasti Automatizuokite darbalaukio programas.
Pasirinkę Šifruoti slaptažodžiu, iššokančiajame dialogo lange užpildykite tuščią eilutę naudodami langą Užpildyti teksto lauką lango veiksme. Norėdami užpildyti tuščią eilutę, naudokite šią išraišką: %""%.
Norėdami paspausti mygtuką Gerai dialogo lange ir pritaikyti pakeitimus, įdiekite mygtuką Paspauskite lango veiksme.
Galiausiai įdiekite veiksmą Uždaryti "Excel", kad išsaugotumėte neapsaugotą darbaknygę kaip naują "Excel" failą.
Įrašę failą, vykdykite nurodymus, pateiktus SQL ryšio su "Excel" failu atidarymas, kad atidarytumėte ryšį su juo.
Kai "Excel" failu bus baigtas manipuliavimas, naudokite veiksmą Naikinti failus , kad panaikintumėte neapsaugotą "Excel" failo kopiją.
"Excel" skaičiuoklės turinio skaitymas
Nors veiksmas Skaityti iš "Excel" darbalapio gali nuskaityti "Excel" darbalapio turinį, ciklams gali prireikti daug laiko, kol bus pakartoti gauti duomenys.
Efektyvesnis būdas gauti konkrečias reikšmes iš skaičiuoklių yra "Excel" failus laikyti duomenų bazėmis ir jose vykdyti SQL užklausas. Šis metodas yra greitesnis ir padidina srauto našumą.
Norėdami gauti visą skaičiuoklės turinį, galite naudoti šią SQL užklausą veiksme Vykdyti SQL sakinį .
SELECT * FROM [SHEET$]
Pastaba.
Norėdami taikyti šią SQL užklausą savo srautuose, pakeiskite vietos rezervavimo ženklą SHEET skaičiuoklės, kurią norite pasiekti, pavadinimu.
Norėdami nuskaityti eilutes, kuriose yra tam tikra reikšmė konkrečiame stulpelyje, naudokite šią SQL užklausą:
SELECT * FROM [SHEET$] WHERE [COLUMN NAME] = 'VALUE'
Pastaba.
Norėdami taikyti šią SQL užklausą savo srautuose, pakeiskite:
- LAPAS su skaičiuoklės, kurią norite pasiekti, pavadinimu.
- STULPELIO PAVADINIMAS su stulpeliu, kuriame yra norima rasti reikšmė. "Excel" darbalapio pirmos eilutės stulpeliai identifikuojami kaip lentelės stulpelių pavadinimai.
- VALUE su reikšme, kurią norite rasti.
Duomenų naikinimas iš "Excel" eilutės
Nors "Excel" nepalaiko DELETE SQL užklausos, galite naudoti užklausą UPDATE , kad nustatytumėte visus konkrečios eilutės langelius į neapibrėžtą.
Tiksliau, galite naudoti šią SQL užklausą:
UPDATE [SHEET$] SET [COLUMN1]=NULL, [COLUMN2]=NULL WHERE [COLUMN1]='VALUE'
Kurdami srautą, turite pakeisti SHEET vietos rezervavimo ženklą skaičiuoklės, kurią norite pasiekti, pavadinimu.
Vietos rezervavimo ženklai COLUMN1 ir COLUMN2 nurodo apdorojamų stulpelių pavadinimus. Šiame pavyzdyje yra du stulpeliai, tačiau realiame scenarijuje stulpelių skaičius gali skirtis. "Excel" darbalapio pirmos eilutės stulpeliai identifikuojami kaip lentelės stulpelių pavadinimai.
Užklausos dalis [COLUMN1]='VALUE'apibrėžia eilutę, kurią norite naujinti. Savo sraute naudokite stulpelio pavadinimą ir reikšmę, pagal kurią derinys unikaliai apibūdina eilutes.
"Excel" duomenų, išskyrus konkrečią eilutę, gavimas
Kai kuriais atvejais gali tekti nuskaityti visą "Excel" skaičiuoklės turinį, išskyrus konkrečią eilutę.
Patogus būdas tai pasiekti yra nustatyti nepageidaujamos eilutės reikšmes į nulinę ir tada gauti visas reikšmes, išskyrus neapibrėžtas.
Norėdami pakeisti konkrečios skaičiuoklės eilutės reikšmes, galite naudoti SQL užklausą UPDATE (SQL naujinimas), kaip pateikta dalyje Naikinti duomenis iš "Excel" eilutės:
UPDATE [SHEET$] SET [COLUMN1]=NULL, [COLUMN2]=NULL WHERE [COLUMN1]='VALUE'
Tada paleiskite šią SQL užklausą, kad gautumėte visas skaičiuoklės eilutes, kuriose nėra neapibrėžtų reikšmių:
SELECT * FROM [SHEET$] WHERE [COLUMN1] IS NOT NULL OR [COLUMN2] IS NOT NULL
COLUMN1 ir COLUMN2 vietos rezervavimo ženklai nurodo stulpelių, kuriuos reikia tvarkyti, pavadinimus. Šiame pavyzdyje yra du stulpeliai, tačiau realioje lentelėje stulpelių skaičius gali skirtis. Visi "Excel" darbalapio pirmos eilutės stulpeliai identifikuojami kaip lentelės stulpelių pavadinimai.