Excel - Uruchom makro, gdy dane wprowadzone do komórki
Jeśli użytkownik chce uruchomić makro w programie Microsoft Excel, gdy zostanie znaleziona komórka D10, należy użyć zdarzenia zmiany arkusza w arkuszu programu Excel, a nie w module. //www.4shared.com/file/89145449/43c8c38/Change_Value_of D10.htlml jest pobierany i ustawiany jest oryginalny kod, który został użyty do uruchomienia makra . Ikona programu Visual Basic na karcie Deweloper jest wybrana dla programu Microsoft Excel-2007. Po przejrzeniu arkusza, w którym chce się uruchomić kod, deklaracje i ogólne są upuszczane, a arkusz jest wybierany. Słowo „Wybór” jest usuwane z „Private Sub Worksheet_SelectionChange” w oknie kodu. Aby zmienić wartość w komórce D10, „$ D $ 10” jest ustawionym adresem docelowym. To z kolei spowodowałoby zmianę zdarzenia arkusza roboczego „Zadzwoń” do Makra .
- Kwestia
- Rozwiązanie
- Uwaga
Kwestia
Mam makro, które działa, gdy użytkownik kliknie przycisk. Zamiast tego chcę, aby Makro działało podczas wypełniania komórki D10. Dane dla D10 pochodzą z rozwijanego menu Walidacja danych, jeśli ma to znaczenie. To powinno być łatwe, ale nie mogę tego zrozumieć.Rozwiązanie
Możesz zachować swoje makro w module pierwszym. Musisz użyć zdarzenia zmiany arkusza w samym arkuszu, a nie w module. Pozwólcie, że wyjaśnię: dostarczę plik wraz z wyjaśnieniem. W arkuszu zakres A5: A25 jest wypełniony liczbami. Jeśli wprowadzisz wartość liczbową w komórce D10, zakres G5: G10 skopiuje zawartość z A5: A25. Jeśli usuniesz wartość z D10, zawartość zakresu G5: G10 zostanie usunięta.//www.4shared.com/file/89145449/43c8c38/Change_Value_of_D10.html
Jakikolwiek był twój oryginalny kod, aby uruchomić Makro, umieść go z powrotem w oryginalnej postaci.
Ponieważ korzystasz z programu Excel 2007, to jest to, co musisz zrobić:
- 1) Kliknij kartę Deweloper.
- 2) Kliknij ikonę Visual Basic.
- 3) W lewym okienku kliknij dwukrotnie arkusz, na którym chcesz uruchomić kod.
- 4) Teraz, w górnej części okna kodu zobaczysz (Ogólne) z rozwijanym menu i (Deklaracje) z rozwijanym menu.
- 5) Kliknij menu rozwijane (Ogólne) i wybierz Arkusz.
- 6) Teraz w oknie kodu zobaczysz Private Sub Worksheet_SelectionChange (ByVal Target As Range)
- 7) Usuń słowo „Wybór”. Chcesz usunąć „Wybór”, ponieważ oznacza to, że po kliknięciu komórki w arkuszu coś się wydarzy. Nie chcesz tego, chcesz wprowadzić wartość w D10. Powinien teraz czytać Private Sub Worksheet_Change (ByVal Target As Range)
- 8) W tym miejscu chcesz kod ...
Private Sub Worksheet_Change (ByVal Target As Range)Jeśli Target.Address = "$ D $ 10" Następnie
Zadzwoń do MyMacro
Zakończ jeśli
Napis końcowy
- 9) Oznacza to, że gdy zmienisz wartość w D10, zdarzenie zmiany arkusza „wywoła” twoje makro.