Robert B.

Robert B. Inspektor, Promost
Sp. z o.o.

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

Dzień dobry,

Mam następujące pytanie:
Do Arkusza1 chcę pobrać pełną zawartość komórki A1 (razem z formułą) z kolejnych arkuszy, czyli Arkusz2 !A1, Arkusz3!A1, itd.

Czy można jakoś skopiować formuły komórki do komórki aby w formule zmieniała się nazwa arkusza czy też pozostaje ręczne wskazywanie komórek?
Sławomir Broda

Sławomir Broda VBA, Excel, Access,
SAP i wszystko
związane z
automatyzac...

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

Robert B.:
Dzień dobry,

Mam następujące pytanie:
Do Arkusza1 chcę pobrać pełną zawartość komórki A1 (razem z formułą) z kolejnych arkuszy, czyli Arkusz2 !A1, Arkusz3!A1, itd.

Czy można jakoś skopiować formuły komórki do komórki aby w formule zmieniała się nazwa arkusza czy też pozostaje ręczne wskazywanie komórek?
Tak. Adres pośredni służy do takich zadań.
Robert B.

Robert B. Inspektor, Promost
Sp. z o.o.

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

Dzień Dobry,
Bardzo dziękuję za szybką odpowiedź, aczkolwiek nadal mam problem. Zastosowałem funkcję ADR.POSR. zgodnie z Pana wskazówką z tym że w dalszym ciągu gdy próbuje przeciągnąć w dół komórkę z formuła wskazaną poniżej to w trakcie kopiowania w formule nie zmienia się nazwa Arkusza2 na Arkusz3, Arkusz4, itd.
=ADR.POŚR("Arkusz2 !$A$1")
Bardzo proszę o pomoc w rozwiązaniu tego problemu
Andy L.

Andy L. ITM, VUB

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

bez drugiego dolara bo zablokowałeś to na jednej komórce to jak chcesz żeby pobierał dane z następnego wiersza, ale i tak nie zadziała

Poczytaj
lub
ale to już byłoTen post został edytowany przez Autora dnia 24.02.15 o godzinie 17:21
Marzanna Szulta

Marzanna Szulta właściciel, Usługi
Informatyczne
SZULTASET

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

Andy L.:
bez drugiego dolara bo zablokowałeś to na jednej komórce to jak
Ale to chyba właśnie chodzi o komórkę A1 tylko z różnych arkuszy, więc ten dolar raczej jednak jest potrzebny.

Ja mam większe wątpliwości odnośnie tej "pełnej zawartości komórki". Ma tam być formuła czy wartość? A jeżeli formuła - to zakładając przykładowo, że w Arkusz2!A1=B1+C1, to jak ma być skopiowana formuła? Ma się odnosić do komórek w Arkusz2 czy do aktywnego arkusza?
Andy L.

Andy L. ITM, VUB

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

Marzanna, masz rację z tym dolarem. W sumie najfajniejszym rozwiązaniem jest skopiowanie arkuszy :-))))) albo vba
Lub kombinować z =FORMULATEXT (EX2013, nie pamiętam czy jest to w 2010)
lub jako źródło do rozważań Ten post został edytowany przez Autora dnia 24.02.15 o godzinie 17:36
Robert B.

Robert B. Inspektor, Promost
Sp. z o.o.

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

Z komórki A1 = suma(A:A10) przykładowo Arkusza2 ma być pobierana wartość
Marzanna Szulta

Marzanna Szulta właściciel, Usługi
Informatyczne
SZULTASET

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

I ma to być wstawiane w pierwszą kolumnę Arkusza1? Czy może jakiś inny układ?
Robert B.

Robert B. Inspektor, Promost
Sp. z o.o.

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

Tak zgadza się, wartości mają być wstawiane w pierwszej kolumnie Arkusza1 (pionowo w dół)
Marzanna Szulta

Marzanna Szulta właściciel, Usługi
Informatyczne
SZULTASET

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

Pomysł formuły nie przychodzi mi do głowy, ale można to zrobić makrem:
Sub WstawWartosciA1()
Dim Nr As Integer
Dim i As Integer
Dim k As Integer
Nr = ActiveSheet.Index
k = 0
For i = 1 To ThisWorkbook.Worksheets.Count
If i <> Nr Then
k = k + 1
Worksheets(Nr).Cells(k, 1) = Worksheets(i).Cells(1, 1)
End If
Next i
End Sub

Musi być uruchomione z tego arkusza, w którym mają być wpisane wartości z pozostałych arkuszy.
Robert B.

Robert B. Inspektor, Promost
Sp. z o.o.

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

Wszystko jest ok z małym wyjątkiem, a mianowicie chodzi o to że komórka A1 zlokalizowana w 300 arkuszach stanowi podsumowanie rejestru obmiarów robót, których wartość ulega zmianie co najmniej raz w tygodniu. W związku z powyższym czy jest możliwe zmodyfikowanie tego makra w taki sposób który będzie uwzględniał zmiany wartości A1 w poszczególnych arkuszach.
Będę wdzięczny za pomoc
Marzanna Szulta

Marzanna Szulta właściciel, Usługi
Informatyczne
SZULTASET

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

Zmiany czyli co? Można to zrobić np. w ten sposób, że w pierwszym wierszu Arkusz1 będzie data i każde kolejne uruchomienie makra nie bezie zastępować danych, tylko przesuwać kolumny w prawo, tak, aby w kolumnie A zawsze były ostatnie wartości. O coś takiego chodzi?
Robert B.

Robert B. Inspektor, Promost
Sp. z o.o.

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

Chodzi mi o to że jeśli np: w arkuszu 10 w komórce A1 zmieni się wartość (z 200 na 450) to żeby ta wartość zmieniała się automatycznie w arkuszu 1
Marzanna Szulta

Marzanna Szulta właściciel, Usługi
Informatyczne
SZULTASET

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

Ok, to w takim razie tak. Makro:
Sub WstawWartosciA1()
Dim Nr As Integer
Dim i As Integer
Dim k As Integer
Dim Nazwa As String
Nr = ActiveSheet.Index
k = 0
For i = 1 To ThisWorkbook.Worksheets.Count
If i <> Nr Then
k = k + 1
Nazwa = Worksheets(i).Name
Worksheets(Nr).Cells(k, 1).Formula = "=" & Nazwa & "!a1"
End If
Next i
End Sub

Wystarczy uruchomić. W arkuszu, z którego zostanie uruchomione wstawione zostaną w kolumnie A nie wartości, a formuły odwołujące się do komórek A1 poszczególnych arkuszy. Każda zmiana w arkuszu źródłowym od razu będzie widoczna w tym zborczym.
Robert B.

Robert B. Inspektor, Promost
Sp. z o.o.

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

Dziękuję serdecznie Pani Marzeno oto mi chodziło
Robert B.

Robert B. Inspektor, Promost
Sp. z o.o.

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

Pani Marzeno proszę mi powiedzieć dlaczego makro które Pani napisała nie działa w przypadku gdy Arkusze w skoroszycie nie nazywają się kolejno: Arkusz1, Arkusz2 itd. tylko KO 1.1, KO 2.2, itd. Przy tak nazwanych arkuszach wyskakuje mi błąd nazwy.
Oskar Shon

Oskar Shon Dodatki do Office
www.VBATools.pl

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

Robert - przyglądnij się jeszcze takiemu rozwiązaniu:


Obrazek
Andy L.

Andy L. ITM, VUB

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

Zajęło to trochę dłużej niż standardowe 25 minut ale można bez VBA za pomocą GET.WORKBOOK :-)
Ale skoro rozwiązanie(a) już są to co ja sie będę wychylał :-)))))))
Marzanna Szulta

Marzanna Szulta właściciel, Usługi
Informatyczne
SZULTASET

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

Nie wzięłam pod uwagę, że w nazwie będzie spacja. Poprawione makro:
Sub WstawWartosciA1()
Dim Nr As Integer
Dim i As Integer
Dim k As Integer
Dim Nazwa As String
Nr = ActiveSheet.Index
k = 0
For i = 1 To ThisWorkbook.Worksheets.Count
If i <> Nr Then
k = k + 1
Nazwa = Worksheets(i).Name
Worksheets(Nr).Cells(k, 1).Formula = "='" & Nazwa & "'!a1"
End If
Next i
End Sub
Robert B.

Robert B. Inspektor, Promost
Sp. z o.o.

Temat: Przeciąganie danych (formul) z komórki (A1) z wielu arkuszy

Jeszcze raz dziękuję :)
Pozdrawiam



Wyślij zaproszenie do