Forum Coders' city Strona Główna Coders' city
Nasza pasja to programowanie!
 

 PomocPomoc   SzukajSzukaj   UżytkownicyUżytkownicy   GrupyGrupy  RejestracjaRejestracja 
Archiwum starego forum + teoria    RSS & Panel/SideBar
 ProfilProfil   Zaloguj się, by sprawdzić wiadomościZaloguj się, by sprawdzić wiadomości   ZalogujZaloguj 

Potrzebuję szybkiej odpowiedzi na moje pytanie... Zasady

[EXCEL] - Czyszczenie komórki po zmianie wartości w innej komórce



 
Odpowiedz do tematu    Forum Coders' city Strona Główna -> Oprogramowanie biurowe
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
SZWAJCAR007



Dołączył: 10 Mar 2017
Posty: 17

PostWysłany: Czw Sie 02, 2018 1:28 pm  OP    Temat postu: [EXCEL] - Czyszczenie komórki po zmianie wartości w innej komórce Odpowiedz z cytatem Pisownia

Proszę o informację co należało by dodać do procedury aby po wprowadzeniu ręcznym do komórki n5 w zakładce "Cennik DRUK" np. liczby nie była komórka czyszczona automatycznie z wprowadzonej ręcznie liczby? Poniżej kod

Kod:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim Kom As Range
Dim Koma As Range

Set Kom = Intersect(Target, Range("w1"))
Set Koma = Intersect(Target, Range("y1"))

        
        Application.EnableEvents = False
        With Sheets("TABELE")
            .Range("AB65").Value = Target.Value
            .Range("af95:ag102").Value = .Range("aa95:ab102").Value
            Range("bb2:bc9").Value = .Range("af95:ag102").Value
        End With
        Application.EnableEvents = True
                  
       Application.EnableEvents = False
       Sheets("CENNIK DRUK").Select
       Range("n5").Select
       Selection.ClearContents
       Sheets("odbiór - bieżąca").Select
       Application.EnableEvents = True

     End Sub


Pozdrawiam
Krzysztof
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość
karolinavb
Site Admin


Dołączył: 25 Maj 2005
Posty: 7886

PostWysłany: Czw Sie 02, 2018 7:01 pm      Temat postu: Odpowiedz z cytatem Pisownia

No przecież sam napisałeś:
Cytat:
Range("n5").Select
Selection.ClearContents
więc czego oczekujesz?
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość
Gość






PostWysłany: Pią Sie 03, 2018 7:09 am  OP(?)    Temat postu: [EXCEL] - Czyszczenie komórki po zmianie wartości w innej komórce Odpowiedz z cytatem Pisownia

Doprecyzuję

Zmieniam dane w komórce y1 i zawartość komórki n5 czyści się. Więc działa ok. Mnie chodzi o to, że jak ręcznie wprowadzę liczbę do komórki n5 i naciskam ENTER to ta liczba ma tam być, a nie zostawać automatycznie usuwana poprzez tą wcześniejsza procedurę. Może jakiś warunek uwzględniajacy to działanie by załatwił sprawę?
Powrót do góry
karolinavb
Site Admin


Dołączył: 25 Maj 2005
Posty: 7886

PostWysłany: Pią Sie 03, 2018 9:48 pm      Temat postu: Odpowiedz z cytatem Pisownia

Cytat:
Zmieniam dane w komórce y1 i zawartość komórki n5 czyści się.
Nieprawda.
Kod procedury jest wykonywany przy jakiejkolwiek zmianie, gdziekolwiek !!!!
Bo gdzie jest sprawdzenie, że zmiana dotyczy y1 ????
Wprawdzie jest Intersect, ale nie ma sprawdzenia wyniku tej metody!!!!
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość
SZWAJCAR007



Dołączył: 10 Mar 2017
Posty: 17

PostWysłany: Wto Sie 07, 2018 7:57 am  OP    Temat postu: [EXCEL] - VBA Czyszczenie komórki po zmianie wartości w innej komórce Odpowiedz z cytatem Pisownia

A jakie zmiany należy wprowadzić zmiany aby Kod procedury wykonywany przy jakiejkolwiek zmianie, gdziekolwiek nie uruchamiał się. Procedura ma być uruchamiana tylko po zmianie wartości w komórce y1.
Zarówno Y1 jak i W1 jest w Sheets("odbiór - bieżąca")

Rozszerzyłem procedurę ale też nie działa prawidłowo

Kod:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim Kom As Range
Dim Koma As Range

Set Kom = Intersect(Target, Range("w1"))
Set Koma = Intersect(Target, Range("y1"))

If Not Kom Is Nothing Then
Application.EnableEvents = False
With Sheets("TABELE")
.Range("AB65").Value = Target.Value
.Range("af95:ag102").Value = .Range("aa95:ab102").Value
Range("bb2:bc9").Value = .Range("af95:ag102").Value
End With
Application.EnableEvents = True
End If


With Sheets("CENNIK DRUK")
Range("n5").Select
Selection.ClearContents
Sheets("odbiór - bieżąca").Select
Application.EnableEvents = True
End With

If Not Koma Is Nothing Then
Application.EnableEvents = False
With Sheets("TABELE")
.Range("AB65").Value = Target.Value
.Range("af95:ag102").Value = .Range("aa95:ab102").Value
Range("bb2:bc9").Value = .Range("af95:ag102").Value
End With

End If
End Sub

Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość
karolinavb
Site Admin


Dołączył: 25 Maj 2005
Posty: 7886

PostWysłany: Wto Sie 07, 2018 7:07 pm      Temat postu: Odpowiedz z cytatem Pisownia

Fragment kodu dla n5:
Cytat:
With Sheets("CENNIK DRUK")
Range("n5").Select
Selection.ClearContents
Sheets("odbiór - bieżąca").Select
Application.EnableEvents = True
End With
nadal nie jest niczym uwarunkowany!
O zamieszaniu z Application.EnableEvents w kodzie nie wspomnę....
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość
Wyświetl posty z ostatnich:   
Odpowiedz do tematu    Forum Coders' city Strona Główna -> Oprogramowanie biurowe Wszystkie czasy w strefie CET (Europa)

Strona 1 z 1

 
Skocz do:  
Możesz pisać nowe tematy
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
Możesz dodawać załączniki na tym forum
Możesz pobierać pliki z tego forum




Debug: strone wygenerowano w 0.17243 sekund, zapytan = 11
contact

| Darmowe programy i porady Jelcyna | Tansze zakupy w Helionie | MS Office Blog |