Kwerendy i Excel aktualizacji danych przy użyciu obiektu ADO Z ASP

Tłumaczenia artykułów Tłumaczenia artykułów
Numer ID artykułu: 195951 - Zobacz jakich produktów dotyczą zawarte w tym artykule porady.
Rozwiń wszystko | Zwiń wszystko

Na tej stronie

Streszczenie

W tym artykule przedstawiono sposób tworzenia kwerend i aktualizacji informacje zawarte w arkuszu kalkulacyjnym programu Excel przy użyciu obiektów danych ActiveX (ADO) z Strony Active Server Pages (ASP). Opisano również ograniczeń, nie są skojarzone z tym typem aplikacji.

Ważne: Jeśli Aplikacje ASP i ADO obsługi wielu użytkowników, arkusz kalkulacyjny programu Excel nie obsługuje. W związku z tym nie obsługuje tej metody tworzenia kwerend i aktualizowanie informacji równoczesny dostęp wielu użytkowników.

Więcej informacji

Dostęp do danych w arkuszu kalkulacyjnym programu Excel to próbki należy użyć sterownik Microsoft ODBC dla programu Excel. Tworzenie tabeli dostępu do dane, tworząc nazwany obszar komórek w arkuszu kalkulacyjnym programu Excel.

Kroki, aby utworzyć aplikację przykładową

  • Utwórz plik programu Excel ADOtest.xls z następujących danych: w arkuszu Arkusz1:

    Zwiń tę tabelęRozwiń tę tabelę
    Kolumna1Kolumna2Kolumna3
    rekord zasobu to15
    bbTest20
    EEProgram Works25

    Uwaga Jeśli kolumny w arkuszu kalkulacyjnym programu Excel zawiera zarówno tekst i numery, sterownik ODBC programu Excel nie może poprawnie zinterpretować typu danych Kolumna powinna być. Upewnij się, że wszystkie komórki w kolumnie są Ten sam typ danych. Trzy następujące błędy może wystąpić w przypadku każdej komórki w kolumnie nie jest tego samego typu, lub mieć typy mieszane między "tekst" i "Ogólne":
    1. Dostawca Microsoft OLE DB dla sterowników ODBC "80040e21"
      Właściwości żądania mogą nie być obsługiwane przez Ten sterownik ODBC.
    2. Dostawca Microsoft OLE DB dla sterowników ODBC '80004005'
      Kwerenda nie będzie możliwa ponieważ go zawiera przeszukiwalnych kolumn służy jako klucz hopeful.
    3. Dostawca Microsoft OLE DB dla sterowników ODBC '80004005'
      Nie można zaktualizować kwerendy oparte. Wiersza do aktualizacji nie można odnaleźć.
  • Utworzyć zakres o nazwie myRange1, arkusz kalkulacyjny:

    1. Podświetl wiersze i kolumny obszar gdzie danych znajduje się.
    2. W menu Wstaw wskaż polecenie Nazwa, a następnie kliknij przycisk Zdefiniuj.
    3. Wprowadź zakres o nazwie myRange1 nazwy Nazwa.
    4. Kliknij przycisk OK.
    Zakres o nazwie myRange1 zawiera następujące dane:

    Zwiń tę tabelęRozwiń tę tabelę
    Kolumna1Kolumna2Kolumna3
    rekord zasobuto15
    bbTest20
    EEProgram Works25


    Uwaga Obiekty ADO zakłada, że pierwszy wiersz w kwerendzie programu Excel zawiera nagłówki kolumn. Dlatego też zakres o nazwie musi zawierać nagłówki kolumn. Jest to zachowanie różnych obiektów DAO.

    Uwaga Nagłówki kolumn nie może być liczbą. Nie można sterownika programu Excel zinterpretowane i zamiast tego odwołania zwraca wartość komórki. Na przykład w kolumnie Nagłówek "f1" może być błędnie zinterpretowana.
  • Tworzenie ODBC systemu źródła danych nazwie (DSN) wskazując plik ADOTest.xls.
    1. W Panelu sterowania otwórz ODBC Administrator.
    2. Na karcie systemowe DSN kliknij przycisk Dodaj.
    3. Wybierz sterownik programu Microsoft Excel (*.xls), a następnie kliknij przycisk Zakończ. Jeśli ta opcja nie istnieje, należy zainstalować sterownik ODBC firmy Microsoft dla programu Excel z programu Excel.
    4. Wybierz ADOExcel dla nazwy źródła danych.
    5. Upewnij się, że wersja jest ustawiony na odpowiednią wersję Program Excel.
    6. Kliknij przycisk "Wybierz skoroszyt...", przejdź do ADOTest.xls plik, a następnie kliknij przycisk OK.
    7. Kliknij przycisk "Opcje >>" przycisk i wyczyść odczytu" Tylko"pole wyboru.
    8. Kliknij przycisk OK, a następnie kliknij przycisk OK.
  • Ustaw uprawnienia do pliku ADOTest.xls.
Active Server Page jest uzyskiwać dostęp anonimowo, należy Upewnij się, że konto anonimowe (IUSR_<machinename>) ma co najmniej Dostęp do odczytu i zapisu (RW) do arkusza kalkulacyjnego. Jeśli chcesz usunąć informacje z arkusza kalkulacyjnego należy udzielić uprawnień odpowiednio.<b00></b00></machinename>

Jeśli są uwierzytelniani dostęp do strony Active Server, trzeba zapewnić odpowiednie wszystkich użytkowników uzyskujących dostęp do aplikacji uprawnienia.

Uwaga Jeśli odpowiednie uprawnienia nie jest ustawiona na Arkusz kalkulacyjny, zostanie wyświetlony komunikat o błędzie podobny do następującego:

Microsoft OLE DB Provider for ODBC Drivers błąd '80004005'

[Microsoft][Sterownik ODBC programu Excel] Microsoft Jet Aparat bazy danych nie można otworzyć pliku (nieznany). Jest już otwarty. wyłącznie przez innego użytkownika lub jeśli potrzebne są uprawnienia do wyświetlania danych.
  1. Tworzenie nowej strony ASP i wklej poniższy kod:
          <!-- 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. Zapisz nadaj nazwę Active Server Page i wyświetlić go w przeglądarki. Zostanie wyświetlony poniżej:
          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
    					
Uwaga Aktualizacja została wykonana na pierwszy wiersz zakresu o nazwie (po pozycjach).

Materiały referencyjne

Aby uzyskać dodatkowe informacje kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
190195Jak ExtractInformation Z arkusza programu Excel z obiektów DAO

Właściwości

Numer ID artykułu: 195951 - Ostatnia weryfikacja: 21 czerwca 2011 - Weryfikacja: 2.0
Informacje zawarte w tym artykule dotyczą:
  • Microsoft Active Server Pages 4.0
  • Microsoft Data Access Components 2.5
Słowa kluczowe: 
kbcode kbhowto kbmdacnosweep kbmt KB195951 KbMtpl
Przetłumaczone maszynowo
WAŻNE: Ten artykuł nie został przetłumaczony przez człowieka, tylko przez oprogramowanie do tłumaczenia maszynowego firmy Microsoft. Firma Microsoft oferuje zarówno artykuły tłumaczone przez ludzi, jak i artykuły tłumaczone maszynowo, dzięki czemu każdy użytkownik może uzyskać dostęp do całej zawartości bazy wiedzy Knowledge Base we własnym języku. Prosimy jednak pamiętać, że artykuły przetłumaczone maszynowo nie zawsze są doskonałe. Mogą zawierać błędy słownictwa, składni i gramatyki, przypominające błędy robione przez osoby, dla których język użytkownika nie jest językiem ojczystym. Firma Microsoft nie odpowiada za wszelkie nieścisłości, błędy lub szkody spowodowane nieprawidłowym tłumaczeniem zawartości oraz za wykorzystanie tej zawartości przez klientów. Oprogramowanie do tłumaczenia maszynowego jest często aktualizowane przez firmę Microsoft.
Anglojęzyczna wersja tego artykułu to:195951

Przekaż opinię

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com