Elektroda.pl
Elektroda.pl
X

Search our partners

Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Eksport danych Excel -> strona www

Onyx01 20 Sep 2013 23:08 4521 5
  • #1
    Onyx01
    Level 8  
    Witam

    Mam pytanie dotyczące eksportu danych z programu Excel 2007 na stronę www
    Mam w Excelu cennik towarów (około 20 pozycji, dwie kolumny: nazwa produktu / cena).
    Cennik ten docelowo ma być aktualizowany raz w tygodniu.
    Moje pytanie brzmi. Czy jest możliwość wykonania tej czynności z poziomu Excela? Przycisk wyślij, opublikuj? Tak żebym nie musiał za każdym razem wchodzić na stronę www i bawić się z tym w html'u? Wejście do Excela z poziomu pulpitu, szybka zmiana ceny, jej eksport i ponowne zapisanie są zdecydowanie mniej kłopotliwe.

    Ewentualnie jeśli jest taka opcja byłbym wdzięczny za radę jak to wykonać.

    Pozdrawiam
  • #2
    Dżyszla
    Level 42  
    Oczywiście, że aplikacje pakietu Office potrafią zapisywać do HTML (Zapisz jako). Ale zdecydowanie bym tą metodę odradzał ze względu na koszmarny kod, jaki powstaje.

    Zdecydowanie bardziej polecam po prostu umożliwienie ściągnięcia pliku np w postaci CSV.
    Jeśli bardzo zależy na publikowaniu na stronie, to pasowałoby mieć możliwość wykorzystania któregoś z języków skryptowych po stronie serwera (np. PHP), który by przetwarzał plik CSV (zapisany z Excela) na postać przyjazną.
  • #3
    Onyx01
    Level 8  
    Chodzi mi raczej tylko o podmianę danych. Otwieram Excela, zmieniam cenę w tabeli z 12,00 zł na 12,20. Klik! I mam to na stronie www.
    Czy Excel ma taką możliwość?
    Nie chcę eksportować tego do html'a i za każdym razem podmieniać pliku, tym bardziej że Excel generuje kilometry dziwnego kodu
  • #4
    marcinj12
    Level 40  
    Witam,

    Akurat miałem do zrealizowania identyczne zadanie - prostą stronkę dla naszego bufetu (sam HTML, bez PHP czy bazy danych), z możliwością cotygodniowego aktualizowania menu.
    Stworzyłem w tym celu mini-CMSa w Excelu - użytkownik wprowadza tam poszczególne pozycje, klika przycisk, a makro tworzy z nich stronę HTML.
    Mogę się nim podzielić. :)

    U mnie stron jest kilka, ale myślę, że najbardziej zainteresuje Cię strona z cennikiem dodatkowych produktów - ma właśnie formę dwukolumnowej tabeli, z nazwą produktu i ceną. Dodatkowo założeniem było wyróżnienie stylem "sekcji" produktów, stąd w kolumnie A sprawdzanie dodatkowego warunku.

    Sam kod jest prosty - w zasadzie to zapis danych do pliku tekstowego, jedynym wyzwaniem było znalezienie sposobu zapisu w formacie UTF-8 (stąd obiekt ADODB.Stream i funkcja fs.writetext).

    Trochę zabawy jest jedynie z umieszczeniem kodu wewnątrz znaczników, na szczęście to jednorazowe zadanie. Kopiujesz kod HTML swojej strony, zastępujesz w nim każdy cudzysłów dwoma cudzysłowami i taki kod wklejasz w makro.
    Na początku każdej linii doklejasz fs.writetext ", a na końcu: ", 1 tak, aby znacznik znalazł się pomiędzy, tzn. w stylu:
    Code: vb
    Log in, to see the code

    Tam, gdzie ma być wstawiony tekst z jakiejś komórki, wspomagasz się kodem VBA i modyfikujesz odpowiednio tekst miedzy znacznikami.
    Code: vb
    Log in, to see the code

    Najłatwiej podejrzeć na przykładzie - dołączyłem ze stylem żeby jakoś to wyglądało :)
    Pozdrawiam i liczę, że o to chodziło :)
  • #6
    Onyx01
    Level 8  
    Dziękuję za odpowiedzi