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.

[VBA] - Makro do kopiowania danych z innego pliku.

tefel 14 Sie 2014 13:39 1866 9
  • #1 14 Sie 2014 13:39
    tefel
    Poziom 2  

    Witam,

    z racji malej wiedzy napisalem ten kod analizujac nagrane wczesniej makro. Blad (zapewne trywialny) z ktorym nie moge sobie poradzic polega na tym, ze nie sa kopiowanie dane z pliku wsad, a makro wykonuje sie na pliku z ktorego je uruchamiam. Zapewne trzeba cos dodac po poleceniu otwarcia pliku, ale mimo, ze glowie i sie i troje nie wiem co ;(

    Code:
    Private Sub CommandButton1_Click()
    
        Workbooks.Open Filename:="C:\Users\mm\Desktop\Nowy_folder\wsad.xlsx"
               Range("A:A").Copy
               ThisWorkbook.Activate
               Sheets("Arkusz2").Activate
                    Range("B1").Select
               ActiveSheet.Paste
        Workbooks("wsad.xlsx").Close
    End Sub

    0 9
  • Pomocny post
    #2 14 Sie 2014 15:23
    PRL
    Poziom 33  

    Kod: vb
    Zaloguj się, aby zobaczyć kod

    0
  • #3 14 Sie 2014 15:29
    JRV
    Specjalista - VBA, Excel

    PRLThisWorkbook.Activate = Windows(Zeszyt).Activate

    Zrobić pełny link do arkusza.
    ActiveWorkbook.Sheets(1).Range("A:A").Copy
    Być może, jak skoroszyt otwiera, jest kopiowany z bieżącego zakresu.

    0
  • #4 14 Sie 2014 15:54
    PRL
    Poziom 33  

    JRV

    Zgadza się. Przeoczyłem, że autor uaktywnia aktywny arkusz, czyli nie ten, którego się spodziewał.

    0
  • #5 19 Sie 2014 12:03
    tefel
    Poziom 2  

    Super, działa jak trzeba ;-) Mam jeszcze nature kwestii "estetycznej". Mianowicie przy kopiowaniu wyskakuje komunikat o dużej ilości informacji w schowku, można to wyłączyć albo zaszyć gdzieś, żeby wybierał opcje "nie" ?

    0
  • #6 19 Sie 2014 13:28
    PRL
    Poziom 33  

    Kod: vb
    Zaloguj się, aby zobaczyć kod

    0
  • #7 21 Sie 2014 09:15
    tefel
    Poziom 2  

    Moge potrzebować jeszcze skopiować kolumne B. Jedyne rozwiązanie na jakie wpadłem jest poniżej. Istnieje jakiś bardziej optymalny sposób, żeby kod jeśli w przyszłości dodam więcej kolumn nie wykonywał się zbyt długo ? :D

    Kod: vb
    Zaloguj się, aby zobaczyć kod

    0
  • #8 21 Sie 2014 09:43
    PRL
    Poziom 33  

    Kod: vb
    Zaloguj się, aby zobaczyć kod

    0
  • #9 21 Sie 2014 10:17
    Maciej Gonet
    Poziom 31  

    Dzień dobry,
    Jeżeli dane do kopiowania zaczynają się od pierwszego wiersza, to fragment dotyczący kopiowania można skrócić tak:

    Kod: vb
    Zaloguj się, aby zobaczyć kod


    Pozdrowienia.

    0
  • #10 02 Wrz 2014 20:21
    seba78787878
    Poziom 6  

    Sorki że się włączę a jeśli nie znamy nazwy pliku i próbujemy go znaleźć, otworzyć oraz skopiować to samo

    Kod: vb
    Zaloguj się, aby zobaczyć kod


    wystarczy?

    0