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 - makro do kopiowania

marekgr1 07 Lis 2010 22:26 1928 5
  • #1 07 Lis 2010 22:26
    marekgr1
    Poziom 18  

    Witam.
    Potrzebuje zrobić coś takiego:
    Wstawiam dane w komórce np. A1 to automatycznie kopiuje do np B1.Teraz w A1 zmieniam wartość danych to automatycznie kopiuje nową wartość do B2 i tak w kółko jak jest nowa wartość w A1 to przenosi ją w nową komórkę. Ma to się odbywać w automacie bez przyciskania przycisków. Chcę ze strony internetowej importować dane, które w w/w sposób miały być zapisywane po zmianie wartości , a potem przedstawiane na wykresach.

    0 5
  • #2 07 Lis 2010 23:35
    adamas_nt
    Moderator Programowanie

    Wklej w kod arkusza

    Code:
    Private Sub Worksheet_Change(ByVal Target As Range)
    
    If Target.Address(0, 0) = "A1" Then
      ostW = WorksheetFunction.CountA(Range("B:B")) + 1
      Cells(ostW, 2) = Target.Value
    End If
    End Sub

    Jeśli dopuszczasz puste wiersze to zamiast tych dwóch linijek wewnątrz, wstaw
    Code:
      If Cells(1, 2) = "" Then
    
        ostW = 1
      Else
        ostW = Range("B65536").End(xlUp).Row + 1
      End If
      Cells(ostW, 2) = Target.Value
    Jeśli B1 też może zostać pusta to należy połączyć jedno z drugim...

    0
  • #3 08 Lis 2010 01:27
    marekgr1
    Poziom 18  

    Wszystko działa Ok przy ręcznym wpisywaniu danych w komórkę A1 ale jeśli dane są pobierane z internetu (lub np z innej komórki) automatycznie to nie są wpisywane do komórek B1, B2 itd. Zauważyłem ze po wpisaniu musi być wciśnięty Enter żeby zadziałało. Da coś się zrobić żeby działało bez tego Entera tzn. z automatu.

    0
  • Pomocny post
    #4 09 Lis 2010 14:38
    adamas_nt
    Moderator Programowanie

    Ręce opadają :)
    To co Ty właściwie chcesz zrobić?

    marekgr1 napisał:
    ale jeśli dane są pobierane z internetu
    Dane z internetu wprowadzaj od razu do "z góry upatrzonego" zakresu.

    marekgr1 napisał:
    lub np z innej komórki
    Oprogramuj tą "inną komórkę"...
    Co to znaczy "z automatu"? Żeby coś się zmieniło w arkuszu, najpierw musi się coś wydarzyć.

    1
  • #5 10 Lis 2010 17:36
    marekgr1
    Poziom 18  

    Tak jak pisałem wyżej jeśli dane wprowadzam w daną komórkę z klawiatury to wszystko działa, natomiast jeśli dane do tej komórki są pobierane z internetu i się zmieniają ( np. kursy giełdowe) to te makro nie działa. Tzn. W komórce A1 się dane zmieniają ale w B1 już się nic nie dzieje.

    0
  • #6 12 Lis 2010 22:36
    marekgr1
    Poziom 18  

    Temat zamykam.Rozwiązałem problem. Oczywiście kod adamas_nt oraz dołożyłem jeszcze odświeżanie arkusza i wszystko działa tak jak chciałem.

    0