Jak wyświetlić pierwszą pozycję na liście rozwijanej zamiast pustej?
Lista rozwijana w arkuszu może nam pomóc w ułatwieniu wprowadzania danych, wystarczy wybrać elementy bez wpisywania ich jeden po drugim. Ale czasami, po kliknięciu listy rozwijanej, najpierw przeskakuje ona do pustych pozycji zamiast do pierwszej pozycji danych, jak pokazano na poniższym zrzucie ekranu, może to być spowodowane usunięciem danych źródłowych na końcu listy. Może być denerwujące, że musisz przewinąć z powrotem na początek długiej listy dla każdej pustej komórki sprawdzania poprawności danych. W tym artykule omówię, jak zawsze wyświetlać pierwszy element z rozwijanej listy.
Pokaż pierwszy element na liście rozwijanej zamiast pustego z funkcją Walidacja danych
Automatycznie pokazuj pierwszy element z rozwijanej listy zamiast pustego z kodem VBA
Pokaż pierwszy element na liście rozwijanej zamiast pustego z funkcją Walidacja danych
Właściwie, aby osiągnąć tę pracę, wystarczy zastosować określoną formułę podczas tworzenia listy rozwijanej, wykonaj następujące czynności:
1. Wybierz komórki, do których chcesz wstawić listę rozwijaną, i kliknij Dane > Walidacja danych > Walidacja danychzobacz zrzut ekranu:
2. W wyskoczył Walidacja danych okno dialogowe w obszarze Ustawienia kartę, wybierz Lista z Dopuszczać a następnie wprowadź następującą formułę: = OFFSET (Sheet3! $ A $ 1,0,0, COUNTA (Sheet3! $ A: $ A) -1,1) do Źródło pole tekstowe, patrz zrzut ekranu:
Note: W tym wzorze Sheet3 czy arkusz zawiera listę danych źródłowych, a A1 to pierwsza wartość komórki na liście.
3. Następnie kliknij OK przycisk, teraz, po kliknięciu komórek listy rozwijanej, pierwszy element danych zawsze wyświetlany u góry, czy na końcu danych źródłowych są usunięte wartości komórek, patrz zrzut ekranu:
Automatycznie pokazuj pierwszy element z rozwijanej listy zamiast pustego z kodem VBA
Tutaj mogę również wprowadzić kod VBA, który pomoże ci automatycznie wyświetlić pierwszy element z rozwijanej listy po kliknięciu komórek sprawdzania poprawności danych.
1. Po wstawieniu listy rozwijanej wybierz kartę arkusza, która zawiera listę rozwijaną, i kliknij prawym przyciskiem myszy, aby wybrać Wyświetl kod z menu kontekstowego, aby przejść do pliku Microsoft Visual Basic for Applications okno, a następnie skopiuj i wklej następujący kod do modułu:
Kod VBA: automatycznie pokaż pierwszy element danych na liście rozwijanej:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Updateby Extendoffice 20160725
Dim xFormula As String
On Error GoTo Out:
xFormula = Target.Cells(1).Validation.Formula1
If Left(xFormula, 1) = "=" Then
Target.Cells(1) = Range(Mid(xFormula, 1)).Cells(1).Value
End If
Out:
End Sub
2. Następnie zapisz i zamknij okno kodu, a teraz, po kliknięciu komórki listy rozwijanej, pierwsza pozycja danych zostanie wyświetlona od razu.
Najlepsze narzędzia biurowe
Zwiększ swoje umiejętności Excela dzięki Kutools for Excel i doświadcz wydajności jak nigdy dotąd. Kutools dla programu Excel oferuje ponad 300 zaawansowanych funkcji zwiększających produktywność i oszczędzających czas. Kliknij tutaj, aby uzyskać funkcję, której najbardziej potrzebujesz...
Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę
- Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
- Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
- Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!