Excel Forum - Porady, Pomoc,  Excel Help, Excel FAQ Strona Główna
 FAQ  RegulaminRegulamin  Szukaj   Użytkownicy   Grupy   Rejestracja   Profil   Twoje wiadomości   Zaloguj 


Poprzedni temat «» Następny temat
ID tematu: 874 Skopiuj do schowka problem z makrem szukaj kopiuj
Autor Wiadomość
cubi
[Usunięty]

Wysłany: 04-04-2007, 18:10   problem z makrem szukaj kopiuj

Znalazłem takie makro:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 And Target.Count = 1 And Target.Row > 0 Then
If Target.Value <> "" Then
With Worksheets("Arkusz2")
Set znal = .Range("A:A").Find(Target.Value, _
after:=.Range("A1"), lookAt:=xlWhole)
End With
If Not znal Is Nothing Then
znal.Range("B" & znal.Row & ":" & "P" & znal.Row).Copy _
Destination:=Target.Offset(0, 1)
Else
MsgBox " Nie znaleziono !"
End If
Else
Range("B" & Target.Row & ":" & "P" & Target.Row).ClearContents
End If
End If
End Sub

Po wpisaniu wartości w arkuszu1 kolumna A np. 1 wyszukuje jedynki w arkuszu2 kolumnie A:A i kopiuje dane z arkusza2 wiersza z jedynką od B do P.

Makro działa ale kopiuje błędne wartości, jeśli w arkuszu2 mam takie dane:

A B C D itd
1 2 3 4 itd
2 2 2 3 itd
3 3 3 4 itd

i po wpisaniu wartości w arkuszu1
otrzymuje wynik:

A B C D itd
1 2 3 4 - to jest OK
2 3 3 4 - ale ta wartość jest nieprawdziwa powinna dać wynik 2 2 2 3
i każda następna też

chodzi o to żeby wyszukać wartości np. 2 i skopiować zawartość wiersza np od b do p

z góry dziękuje
ID posta: 4491 Skopiuj do schowka
 
 
Tajan


Pomógł: 5252 razy
Posty: 11450
Wysłany: 04-04-2007, 19:56   

Zmień makro w następujący sposób:
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 And Target.Count = 1 And Target.Row > 0 Then
    If Target.Value <> "" Then
        With Worksheets("Arkusz2")
            Set znal = .Range("A:A").Find(Target.Value, _
                    after:=.Range("A1"), lookAt:=xlWhole)

            If Not znal Is Nothing Then
                .Range("B" & znal.Row & ":" & "P" & znal.Row).Copy _
                        Destination:=Target.Offset(0, 1)
            Else
                MsgBox " Nie znaleziono !"
            End If
        End With
    Else
        Range("B" & Target.Row & ":" & "P" & Target.Row).ClearContents
    End If
End If
End Sub
ID posta: 4493 Skopiuj do schowka
 
 
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group
Theme xandgreen created by spleen& Programosy modified v0.3 by warna
Opieka techniczna www.wip.pl

Archiwum

Strona używa plików cookies.

Kliknij tutaj, żeby dowiedzieć się jaki jest cel używania cookies oraz jak zmienić ustawienia cookie w przeglądarce.
Korzystając ze strony użytkownik wyraża zgodę na używanie plików cookies, zgodnie z bieżącymi ustawieniami przeglądarki.
Sprawdź, w jaki sposób przetwarzamy dane osobowe