Note: The other languages of the website are Google-translated. Back to English

Jak używać / wartości odniesienia z poprzedniego arkusza roboczego w programie Excel?

Jak odwołać się do określonej wartości komórki z poprzedniego arkusza roboczego podczas tworzenia kopii w programie Excel? Na przykład podczas tworzenia kopii Sheet2 możesz chcieć automatycznie odwołać się do komórki A1 z Sheet2 do nowego skopiowanego arkusza (mówi Sheet3). Jak to osiągnąć? Ten artykuł Ci pomoże.

Użyj / wartość odniesienia z poprzedniego arkusza roboczego z funkcją zdefiniowaną przez użytkownika
Użyj / wartości odniesienia z poprzedniego arkusza roboczego z Kutools for Excel


Użyj / wartość odniesienia z poprzedniego arkusza roboczego z funkcją zdefiniowaną przez użytkownika

Szczerze mówiąc, żadna metoda nie może automatycznie odwoływać się do określonej wartości komórki podczas tworzenia kopii arkusza. W rzeczywistości możesz utworzyć nowy arkusz, a następnie odwołać się do wartości komórki z poprzedniego arkusza za pomocą następującej funkcji zdefiniowanej przez użytkownika.

1. Po utworzeniu nowego, pustego arkusza (mówi Sheet3), naciśnij inny + F11 klawisze w tym samym czasie, aby otworzyć Microsoft Visual Basic for Applications okno.

2. w Microsoft Visual Basic for Applications okno, kliknij wstawka > Moduł. Następnie skopiuj i wklej następujący kod VBA do okna Code.

VBA: Użyj / wartość odniesienia z poprzedniego arkusza roboczego w programie Excel

Function PrevSheet(RCell As Range)
    Dim xIndex As Long
    Application.Volatile
    xIndex = RCell.Worksheet.Index
    If xIndex > 1 Then _
        PrevSheet = Worksheets(xIndex - 1).Range(RCell.Address)
End Function

3. wciśnij inny + Q klawisze jednocześnie, aby zamknąć Microsoft Visual Basic for Applications okno.

4. Wybierz pustą komórkę Sheet3 (mówi A1), wprowadź formułę = PrevSheet (A1) do Pasek formuły a następnie naciśnij Wchodzę klawisz.

Teraz otrzymasz wartość komórki A1 z poprzedniego arkusza roboczego (Arkusz2) w bieżącym arkuszu.

Uwagi: Kod automatycznie zidentyfikuje arkusz, który należy do poprzedniego arkusza bieżącego.


Użyj / wartości odniesienia z poprzedniego arkusza roboczego z Kutools for Excel

Z Dynamicznie odwołuj się do arkuszy roboczych użyteczność Kutools dla programu Excel, możesz łatwo użyć lub odwołać się do wartości z poprzedniego arkusza w programie Excel.

Przed złożeniem wniosku Kutools dla programu ExcelProszę pobierz i zainstaluj najpierw.

1. Jeśli chcesz odnieść wartość komórki A1 z poprzedniego arkusza do bieżącego arkusza roboczego, wybierz komórkę A1 w bieżącym arkuszu, a następnie kliknij Kutools > Dowiedz się więcej > Dynamicznie odwołuj się do arkuszy roboczych. Zobacz zrzut ekranu:

2. w Wypełnij odniesienia do arkuszy W oknie dialogowym zaznacz tylko poprzednią nazwę arkusza w Lista arkuszy a następnie kliknij Wypełnij zakres przycisk.

Następnie możesz zobaczyć, że wartość komórki A1 w poprzednim arkuszu jest przywoływana w bieżącym arkuszu.

Uwagi: Za pomocą tego narzędzia możesz od razu odwołać się do tej samej wartości komórki z różnych arkuszy do bieżącego arkusza roboczego.

  Jeśli chcesz skorzystać z bezpłatnego okresu próbnego (30-dzień) tego narzędzia, kliknij, aby go pobrać, a następnie przejdź do wykonania operacji zgodnie z powyższymi krokami.


Użyj / wartości odniesienia z poprzedniego arkusza roboczego z Kutools for Excel


Najlepsze narzędzia biurowe

Kutools dla programu Excel rozwiązuje większość problemów i zwiększa produktywność o 80%

  • Ponowne użycie: Szybko włóż złożone wzory, wykresy i wszystko, czego używałeś wcześniej; Szyfruj komórki z hasłem; Utwórz listę mailingową i wysyłaj e-maile ...
  • Pasek Super Formula (łatwo edytować wiele wierszy tekstu i formuły); Układ do czytania (łatwe odczytywanie i edytowanie dużej liczby komórek); Wklej do filtrowanego zakresu...
  • Scal komórki / wiersze / kolumny bez utraty danych; Podziel zawartość komórek; Połącz zduplikowane wiersze / kolumny... Zapobiegaj zduplikowanym komórkom; Porównaj zakresy...
  • Wybierz Duplikat lub Unikalny Wydziwianie; Wybierz puste wiersze (wszystkie komórki są puste); Super Find i Fuzzy Find w wielu zeszytach ćwiczeń; Losowy wybór ...
  • Dokładna kopia Wiele komórek bez zmiany odwołania do formuły; Automatyczne tworzenie odniesień do wielu arkuszy; Wstaw punktory, Pola wyboru i nie tylko ...
  • Wyodrębnij tekst, Dodaj tekst, Usuń według pozycji, Usuń przestrzeń; Tworzenie i drukowanie podsumowań stronicowania; Konwertuj zawartość komórek i komentarze...
  • Super filtr (zapisz i zastosuj schematy filtrów do innych arkuszy); Zaawansowane sortowanie według miesiąca / tygodnia / dnia, częstotliwości i innych; Specjalny filtr pogrubieniem, kursywą ...
  • Połącz skoroszyty i arkusze robocze; Scal tabele na podstawie kluczowych kolumn; Podziel dane na wiele arkuszy; Konwersja wsadowa xls, xlsx i PDF...
  • Ponad 300 zaawansowanych funkcji. Obsługuje Office / Excel 2007-2021 i 365. Obsługuje wszystkie języki. Łatwe wdrażanie w przedsiębiorstwie lub organizacji. Pełne funkcje 30-dniowa bezpłatna wersja próbna. 60-dniowa gwarancja zwrotu pieniędzy.
karta kte 201905

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!
officetab dół
Sortuj komentarze według
Komentarze (21)
Brak ocen. Oceń jako pierwszy!
Ten komentarz został zminimalizowany przez moderatora na stronie
Witam mam pytanie do fachowców. Potrafię nawiązać do poprzedniego arkusza. Ale chciałbym powtarzać to odwołanie w całym skoroszycie w tej samej komórce na następnych arkuszach. (tj. D13) Przykład: Arkusz 1 Komórka D13 jest powtarzana w następnych arkuszach z 1 wartością przyrostu każdy. Jeśli jednak usunę arkusz 7 lub jakikolwiek inny arkusz, potrzebuję programu Excel, aby kontynuować liczenie w ten sam sposób. na przykład arkusz 1 Zaczynam od 100 arkuszy 20, kończę na 119, jeśli usunę kilka arkuszy, chcę się upewnić, że odniesienia zmienią się automatycznie bez ręcznej interwencji. Oznacza to, że odniesienie na D13 jest zmieniane automatycznie po usunięciu arkuszy. Dziękuję za pomoc.
Ten komentarz został zminimalizowany przez moderatora na stronie
Doskonała robota i wyjaśnienie. Zaoszczędziłem mi tyle czasu, bardzo dziękuję.
Ten komentarz został zminimalizowany przez moderatora na stronie
Od zawsze szukałem czegoś, co mogłoby to zrobić, dziękuję bardzo, że nie masz pojęcia. Mam prosty arkusz kalkulacyjny do cotygodniowego wprowadzania danych i nową kartę na każdy tydzień. dni, data, numer tygodnia itd. dają +1, a następnie pobiera z poprzedniego arkusza i przechodzi do nowego, co stworzyło szybkie rozwiązanie do przenoszenia danych do różnych arkuszy --- Jeszcze raz dziękuję
Ten komentarz został zminimalizowany przez moderatora na stronie
Dobry dzień,
Przepraszamy, nie mogę w tym pomóc, możesz zadać pytanie na naszym forum: https://www.extendoffice.com/forum.html aby uzyskać więcej wsparcia Excel od naszego profesjonalisty.
Ten komentarz został zminimalizowany przez moderatora na stronie
A co z wartością użytkową z następnego arkusza?
Ten komentarz został zminimalizowany przez moderatora na stronie
Hi Alex,
Aby uzyskać wartość z następnego arkusza, zastąp znak minus znakiem plus w szóstym wierszu kodu:
Poprzedni arkusz = Arkusze (xIndex + 1). Zakres (RCell.Adres)
Ten komentarz został zminimalizowany przez moderatora na stronie
Cześć Crystal, próbowałem zastąpić znak minus znakiem plus, ale to nie zadziałało - odpowiednia komórka właśnie zwróciła zero. Chcę tylko zmiany wymaganej do wykonania dokładnie tak, jak powyżej, ALE z numeracją skoroszytu od prawej do lewej, tj. Arkusz3, Arkusz 2, Arkusz1 (poprzedni arkusz będzie tym po prawej). Dzięki
Ten komentarz został zminimalizowany przez moderatora na stronie
Cześć Mav,
Metoda działa na podstawie kolejności arkuszy w skoroszycie. tj. Kolejność arkuszy roboczych od lewej do prawej to Arkusz3, Arkusz2 i Arkusz1. W przypadku Arkusza2 poprzedni arkusz to Arkusz3, a następny arkusz to Arkusz1.
Ten komentarz został zminimalizowany przez moderatora na stronie
Cześć Kryształowo,
Tak, wiem. Moje zapytanie (podobnie jak u Alexa) dotyczy tego, jaka zmiana jest wymagana, aby działało w drugą stronę, tj. w przypadku następnego arkusza, gdzie następny arkusz znajduje się na lewo od poprzedniego? Napisałeś do Alexa,
"proszę zastąpić znak minus znakiem plus w szóstym wierszu kodu:
PoprzedniArkusz = Arkusze(xIndex + 1).Zakres(RCell.Adres)".
Mój komentarz miał po prostu powiedzieć, że ta konkretna zmiana nie zadziałała i zapytać, czy masz sposób, który faktycznie zadziała.
Ten komentarz został zminimalizowany przez moderatora na stronie
Wykonałem kroki 1-4, ale wciąż zwracam #NAME? błąd - Proszę o poradę?
Ten komentarz został zminimalizowany przez moderatora na stronie
Cześć Andrew,
Z której wersji pakietu Office korzystasz?
Ten komentarz został zminimalizowany przez moderatora na stronie
Wykonałem kroki 1-4, ale ciągle pojawia się błąd #NAME. Excel 2016. Proszę doradzić?
Ten komentarz został zminimalizowany przez moderatora na stronie
Cześć Anon,
Kod działa dobrze w moim programie Excel 2016. Czy znalazłeś przypomnienie o określonym błędzie w oknie kodu podczas uzyskiwania wyniku błędu #NAZWA?
Ten komentarz został zminimalizowany przez moderatora na stronie
Próbowałem kodu, ale zwraca niedozwolone formuły. Komórka poprzedniego arkusza jest wynikiem formuły. Jak pominąć formułę i zwrócić wynik? Poprzednia komórka arkusza zwraca formułę = SUMA(L38:L39)-L40
Ten komentarz został zminimalizowany przez moderatora na stronie
Cześć RudyT, przetestowałem to w okolicznościach, o których wspomniałeś, ale tutaj nie mam problemu. Z której wersji programu Excel korzystasz?
Ten komentarz został zminimalizowany przez moderatora na stronie
Wow, to było 3 miesiące temu, ale na pewno doceniam odpowiedź...

Nie wiem jak sprawdzić Excel 365... Problem w tym, że mam wartość, którą chcę przekazać do nowego arkusza, który musi odczytać, pobrać wartość poprzedniego arkusza bez nazywania go. Po prostu uzyskaj poprzednią wartość arkusza. Twój kod przekazuje kod z poprzedniego arkusza, a nie wartość. Ponieważ wartość komórki jest formułą, która zbiera sumy z 2 innych komórek.
Ten komentarz został zminimalizowany przez moderatora na stronie
Świetnie Użyłem poprzedniej funkcji arkusza, ale jeśli dodam jakieś wiersze lub kolumny w poprzednim arkuszu, wartości zmieniają się, chcę uzyskać stały wynik. na przykład, jeśli wybiorę =prevsheet(A6), gdzie jest wartość, ale w poprzednim arkuszu, jeśli dodam jeden wiersz, wartość przejdzie do A7, ale w bieżącym arkuszu przyjmuje tylko wartość A6, czy możesz mi pomóc
Ten komentarz został zminimalizowany przez moderatora na stronie
Doskonały!!! Bardzo dziękuję za kod VBA
Ten komentarz został zminimalizowany przez moderatora na stronie
DZIĘKUJE BARDZO! BARDZO POMOCNE!
Ten komentarz został zminimalizowany przez moderatora na stronie
Hej.

Używam greckiego Office 365 z zainstalowanymi wszystkimi aktualizacjami i nie mogę tego uruchomić.

Zwraca błąd nazwy w komórce, którą wprowadzam =PrevSheet(A1).

Oba arkusze mają kod vba, a plik jest zapisywany jako .xlsb

Jakieś wskazówki?
Z góry dzięki :)
Ten komentarz został zminimalizowany przez moderatora na stronie
Cześć Sotos,
Musisz umieścić VBA w Moduł (kod) (naciśnij klawisze Alt + F11, aby otworzyć Edytor wizualny, kliknij Wstaw > Moduł, aby dodać nowy edytor modułów i wprowadź kod). Następnie zastosuj formułę.
Nie ma tu jeszcze żadnych komentarzy
Zostaw swój komentarz
Publikowanie jako gość
×
Oceń ten post:
0   Postacie
Sugerowane lokalizacje

Bądż na bieżąco

Prawa autorskie © 2009 - www.extendoffice.com. | Wszelkie prawa zastrzeżone. Zasilany przez ExtendOffice, | Mapa strony
Microsoft i logo Office są znakami towarowymi lub zastrzeżonymi znakami towarowymi Microsoft Corporation w Stanach Zjednoczonych i / lub innych krajach.
Chronione przez Sectigo SSL