Momentálne ste offline a čaká sa, kým sa znova pripojíte na internet

Ako dotaz a aktualizácia Excel údaje pomocou ADO od ASP

DÔLEŽITÉ: Tento článok bol preložený pomocou softvéru na strojový preklad od spoločnosti Microsoft, nie prekladateľom. Spoločnosť Microsoft ponúka články preložené prekladateľmi aj strojovo preložené články, vďaka čomu máte možnosť prístupu ku všetkým článkom databázy Knowledge Base vo svojom jazyku. Strojovo preložený článok však nie je vždy perfektný. Môže obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky, podobne ako cudzinec môže robiť chyby, keď rozpráva vašim jazykom. Spoločnosť Microsoft nenesie zodpovednosť za akékoľvek nepresnosti, chyby alebo škody spôsobené akýmkoľvek nepresným prekladom obsahu alebo jeho použitím zo strany zákazníkov. Spoločnosť Microsoft softvér na strojový preklad pravidelne aktualizuje.

195951
SUHRN
Tento článok ukazuje ako dotaz a aktualizácie informácie hárku v programe Excel pomocou ActiveX Data Objects (ADO) z Active Server Pages (ASP) stránku. Článok tiež popisuje obmedzenia, sú spojené s tento druh žiadosti.

DÔLEŽITÉ: Hoci ASP/ADO aplikácií podporuje multi-user prístup, tabuľkového procesora Excel neposkytuje. Preto sa táto metóda dotazovania a aktualizovania informácií nepodporuje Multi-User súčasný prístup.
DALSIE INFORMACIE
Prístup k údajom v Excel spreadsheet pre tento vzorky, použiť ovládač ODBC spoločnosti Microsoft pre program Excel. Vytvorenie tabuľky pre prístup k údajov vytvorením pomenovaný rozsah v hárku programu Excel.

Postup vytvorenia Ukážková aplikácia

  • Vytvoriť súbor programu Excel ADOtest.xls s nasledujúce údaje v hárku s názvom Hárok1:

    Stĺpec1Stĺpec2Stĺpec3
    RR Toto15
    bbskúška20
    EEdiela25

    Poznámka: Ak stĺpec v hárku programu Excel obsahuje text a čísla, program Excel ODBC ovládač nemôže správne interpretuje typ údajov by mali byť stĺpec. Uistite sa, že všetky bunky v stĺpci sú rovnaký typ údajov. Nasledujúce tri chyby sa môže vyskytnúť pri každej bunky v stĺpci nie je rovnakého typu alebo môžete mať typy zmiešané medzi "text" a "všeobecné":
    1. Poskytovateľa Microsoft OLE DB pre ovládače ODBC chyba "80040e21"
      Môže byť podložená žiadosť vlastnosti Tento ovládač ODBC.
    2. Poskytovateľa Microsoft OLE DB pre ovládače ODBC chyba "80004005"
      Dotaz nie je aktualizovateľný pretože to obsahuje nijaké prehliadateľné stĺpce použiť ako nádejné kľúče.
    3. Poskytovateľa Microsoft OLE DB pre ovládače ODBC chyba "80004005"
      Dotaz založený aktualizácia zlyhala. V riadku Aktualizovať sa nenašiel.
  • Pomenovaný rozsah, myRange1, vytvorte v hárku:

    1. Zvýrazniť riadky a stĺpce oblasti kde vaše údaje bydlisko.
    2. V ponuke Vložiť ukážte na položku Názov a kliknite na tlačidlo Definovať.
    3. Zadajte názov myRange1 pre pomenovaný rozsah meno.
    4. Kliknite na tlačidlo OK.
    MyRange1 pomenovaný rozsah obsahuje tieto údaje:

    Stĺpec1Stĺpec2Stĺpec3
    RRToto15
    bbskúška20
    EEdiela25


    Poznámka: ADO predpokladá, že prvý riadok v dotaze Excel obsahuje záhlavia stĺpcov. Preto pomenovaný rozsah musí obsahovať hlavičky stĺpcov. To je odlišné správanie z DAO.

    Poznámka: Nadpisy stĺpcov nemôžu byť číslo. Ovládač programu Excel nemôžete interpretovať a namiesto toho vráti v bunke odkaz. Napríklad stĺpec nadpis "F1" by byť nesprávne vyložil.
  • Vytvoriť ODBC systému údajov zdroj názov (DSN) ukážete na položku ADOTest.xls súbor.
    1. Z ovládacieho panela, otvorte ODBC Správca.
    2. Na karte DSN systému kliknite na tlačidlo Pridať.
    3. Vyberte Microsoft Excel Driver (*.xls) a kliknite na tlačidlo Dokončiť. Ak táto možnosť neexistuje, musíte nainštalovať ovládač ODBC spoločnosti Microsoft for Excel z programu Excel Inštalátor.
    4. Vyberte ADOExcel pre názov zdroja údajov.
    5. Uistite sa, že verzia je nastavená na správnu verziu Excel.
    6. Kliknite na tlačidlo "Vybrať zošit...", prejdite na ADOTest.xls súbor a kliknite na tlačidlo OK.
    7. Kliknite na položku „Možnosti >> "tlačidlo a jasné"čítanie Len"políčko.
    8. Kliknite na tlačidlo OK a potom znova kliknite na tlačidlo OK.
  • Nastaviť povolenia na ADOTest.xls súbor.
Ak stránku Active Server je pristupovať anonymne, potrebujete Uistite sa, že aspoň má anonymný konto (IUSR_<machinename>) Čítanie a zápis (RW) prístup na pracovný hárok. Ak chcete odstrániť informácie z hárku, musíte prideliť povolenia podľa toho.<b00></b00></machinename>

Ak sa overuje prístup na stránku Active Server, musíte zabezpečiť, aby všetci používatelia prístup k vašej žiadosti príslušné povolenia.

Poznámka: Ak nenastavíte príslušné povolenia hárok, dostanete chybové hlásenie podobné nasledovnému:

Poskytovateľa Microsoft OLE DB pre ovládače ODBC chybu "80004005"

[Microsoft][Excel ovládač ODBC] Microsoft Jet Databázový mechanizmus nemôže otvoriť súbor (neznámy). Je už otvorené výlučne na iný používateľ, alebo potrebujete povolenie na zobrazenie jeho údajov.
  1. Vytvoriť novú stránku ASP a prilepte nasledujúci kód:
          <!-- Begin ASP Source Code -->      <%@ LANGUAGE="VBSCRIPT" %>      <%        Set objConn = Server.CreateObject("ADODB.Connection")        objConn.Open "ADOExcel"        Set objRS = Server.CreateObject("ADODB.Recordset")        objRS.ActiveConnection = objConn        objRS.CursorType = 3                    'Static cursor.        objRS.LockType = 2                      'Pessimistic Lock.        objRS.Source = "Select * from myRange1"        objRS.Open   %>   <br>   <%      Response.Write("Original Data")      'Printing out original spreadsheet headings and values.      'Note that the first recordset does not have a "value" property      'just a "name" property.  This will spit out the column headings.      Response.Write("<TABLE><TR>")      For X = 0 To objRS.Fields.Count - 1         Response.Write("<TD>" & objRS.Fields.Item(X).Name & "</TD>")      Next      Response.Write("</TR>")      objRS.MoveFirst      While Not objRS.EOF         Response.Write("<TR>")         For X = 0 To objRS.Fields.Count - 1            Response.write("<TD>" & objRS.Fields.Item(X).Value)         Next         objRS.MoveNext         Response.Write("</TR>")      Wend      Response.Write("</TABLE>")      'The update is made here      objRS.MoveFirst      objRS.Fields(0).Value = "change"      objRS.Fields(1).Value = "look"      objRS.Fields(2).Value = "30"      objRS.Update      'Printing out spreadsheet headings and values after update.      Response.Write("<br>Data after the update")      Response.Write("<TABLE><TR>")      For X = 0 To objRS.Fields.Count - 1         Response.Write("<TD>" & objRS.Fields.Item(X).Name & "</TD>")      Next      Response.Write("</TR>")      objRS.MoveFirst      While Not objRS.EOF         Response.Write("<TR>")         For X = 0 To objRS.Fields.Count - 1            Response.write("<TD>" & objRS.Fields.Item(X).Value)         Next         objRS.MoveNext         Response.Write("</TR>")      Wend      Response.Write("</TABLE>")      'ADO Object clean up.      objRS.Close      Set objRS = Nothing      objConn.Close      Set objConn = Nothing   %>   <!-- End ASP Source Code -->					
  2. Uložte a pomenujte stránku Active Server a zobrazenie na prehľadávač. Uvidíte nasledujúce:
          Original Data:      column1    column2    column3      -----------------------------      rr         this       30      bb         test       20      tt         works      25      Data after the update:      column1    column2    column3      -----------------------------      change     look       30      bb         test       20      tt         works      25					
Poznámka: Aktualizácia bola vykonaná na prvom riadku pomenovaný rozsah (po položkách).
ODKAZY
Ďalšie informácie získate po kliknutí na nasledujúce číslo článku databázy Microsoft Knowledge Base:
190195Ako sa ExtractInformation Z hárka programu Excel s DAO

Upozornenie: Tento článok bol preložený automaticky

Vlastnosti

ID článku: 195951 – Posledná kontrola: 10/19/2011 09:39:00 – Revízia: 2.0

  • Microsoft Active Server Pages 4.0
  • Microsoft Data Access Components 2.5
  • kbcode kbhowto kbmdacnosweep kbmt KB195951 KbMtsk
Pripomienky
ex="0" id="language-">