Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

excel VBA - zapisanie danych do innego pliku

muchajarek 25 Lis 2010 20:42 7243 6
  • #1 25 Lis 2010 20:42
    muchajarek
    Poziom 10  

    Witam. Potrzebuje porady. Mam w folderze kilka plików excela o nazwach np. "jeden" "dwa" itp. W pliku "roboczym" w TextBox1 wpisuje pewne dane i po przycisnięciu przycisku chciałbym aby te dane przeniosły się np. do pliku "jeden" do arkusza "1" do komórki A1. Próbowałem na wiele sposobów między innymi w ten podany poniżej i klapa. Dzięki za pomoc. Bo nie wiem co robię źle.

    Code:
    Workbook(jeden.xls).Sheets(1).Cells(1, 1) = Me.TextBox1.Value

    0 6
  • Pomocny post
    #2 26 Lis 2010 15:05
    adamas_nt
    Moderator Programowanie

    A czy dana nie ląduje czasem w innym arkuszu niż zakładasz?
    Sheets(1) to arkusz o indeksie jeden. Jeśli "1" to nazwa arkusza, to posługuj się nazwą Sheets("1")
    Poza tym Workbooks("jeden.xls")

    0
  • #3 26 Lis 2010 16:46
    muchajarek
    Poziom 10  

    Dzięki za pomoc.Wszystko OK. Mam jednak pytanie dodatkowe. Podany poniżej kod pozwala zapisywać dane w pliku "jeden" w arkuszu "1" pod warunkiem, że plik "jeden": jest otwarty. Czy możliwe jest zapisywanie danych jeśli plik nie jest w danej chwili otwarty

    Code:
    Workbooks("jeden.xls").Sheets("1").Cells(1, 1) = Me.TextBox1.Value

    0
  • #4 26 Lis 2010 18:41
    marcinj12
    Poziom 40  

    Z tego co mi wiadomo to oprócz zapisu przez ADODB - nie ma takiej możliwości. Musisz go uprzednio otworzyć, choć nie musisz pokazywać:

    Code:
    Dim xlApp As New Excel.Application
    
    Set wb = xlApp.Workbooks.Open("c:\dane.xls")
    wb.Worksheets("Arkusz1").Cells(1, 1) = "cośtam"
    wb.Save
    wb.Close
    Set wb = Nothing
    Set xlApp = Nothing

    (ze zaminnej xlApp można zrezygnować, jednak wtedy będzie w tle otwierał plik)

    0
  • #5 26 Lis 2010 20:20
    muchajarek
    Poziom 10  

    dzięki za pomoc. Jednak jak wskazuje nazwa "forum dla początkujacych" ja właśnie jestem bardzo początkujący. Użyłem podanego kodu jednak za każdem razem w drugim wierszu wyskakuje błąd.

    0
  • #6 26 Lis 2010 21:24
    marcinj12
    Poziom 40  

    muchajarek napisał:
    dzięki za pomoc. Jednak jak wskazuje nazwa "forum dla początkujacych" ja właśnie jestem bardzo początkujący. Użyłem podanego kodu jednak za każdem razem w drugim wierszu wyskakuje błąd.

    W drugim wierszu czyli tutaj:
    Code:
    Set wb = xlApp.Workbooks.Open("c:\dane.xls")
    ? A podajesz właściwą ścieżkę do istniejącego pliku? Jakiej wersji Excela używasz?

    0
  • #7 26 Lis 2010 22:36
    muchajarek
    Poziom 10  

    TAK, O TEN WIERSZ CHODZI. Używam excel 2003, jeśli o to chodzi. jak mówiłem POCZĄTKUJĄCY

    Nie ma potrzeby KRZYCZEĆ !. Proszę się nie denerwować i traktować z szacunkiem innych użytkowników forum! - arnoldziq

    0
  Szukaj w 5mln produktów