ID tematu: 70177
 |
jak wyszukać konkretną cenę z konkretnej daty |
Autor |
Wiadomość |
amarc
Świeżak

Wersja: Win Office 2000
Posty: 3
|
Wysłany: 18-02-2021, 12:00 jak wyszukać konkretną cenę z konkretnej daty
|
|
|
witam,
potrzebuję wyciągnąć w łatwy i przyjemny sposób dane z różnych dat.
Mam indeksy, które były sprzedawane na przestrzeni lat po różnych cenach, a potrzebne mi są te z ostatniej daty sprzedaży
jakiej formuły / formuł/ powinnam użyć?
Cenyprzyklad.xlsx
|
Pobierz Plik ściągnięto 14 raz(y) 9.03 KB |
|
|
 | ID posta:
400610
|
|
|
 |
|
|
|
bezet-1147
Exceloholic

Wersja: Win Office 2007
Pomógł: 19 razy Posty: 103
|
Wysłany: 18-02-2021, 12:49
|
|
|
.
Do tego nie potrzeba tworzyć formuł. Wystarczy to, co jest wbudowane w Excelu.
1) Zaznacz cały zakres komórek (w załączonym przez Ciebie przykładzie będzie to zakres: A1:C13
2) U góry okna wybierz kartę "Dane", a w niej wybierz polecenie "Sortuj"
3) W oknie polecenia Sortuj, kliknij u góry, po lewej: "Dodaj poziom"
4) Teraz wystarczy wypełnić odpowiednio oba poziomy (czyli: najpierw sortowanie według kolumny "indeks" (będzie to poziom pierwszy sortowania), a następnie sortowanie według kolumny "data sprzedaży" (będzie to poziom drugi sortowania), przy czym w wierszu poziomu drugiego wybierz wariant sortowania: Kolejność "od najnowszych do najstarszych".
-------------
45
. |
|
|
 | ID posta:
400616
|
|
|
 |
|
|
amarc
Świeżak

Wersja: Win Office 2000
Posty: 3
|
Wysłany: 18-02-2021, 13:05
|
|
|
ok, to zadziała, ale nie w przypadku kiedy masz ok 500 pozycji. :)
chodzi o t, że tutaj dałam tylko przykład. Generalnie indeksów jest więcej i dat też. jak dam wyszukaj pionowo to wyszuka przypadkowe wartości, a ja chcę konkretne.
przez maks. warunków znalazłam ostatnią datę sprzedaży i na tym się zatrzymałam bo nie wiem jak to zrobić dalej. |
|
 | ID posta:
400618
|
|
|
 |
|
|
xfish
Excel Expert


Wersja: Win Office 2013
Pomógł: 446 razy Posty: 1385
|
Wysłany: 18-02-2021, 13:08
|
|
|
Załącznik
Kopia Cenyprzyklad.xlsx
|
Pobierz Plik ściągnięto 16 raz(y) 10.99 KB |
|
_________________ Pozdrawiam
xFish |
|
 | ID posta:
400620
|
|
|
 |
|
|
umiejead
Excel Expert

Wersja: Win Office 2013
Pomógł: 771 razy Posty: 4155

|
Wysłany: 18-02-2021, 13:14
|
|
|
Wersja do dokończenia - nie mam jak inaczej zapisać!!!!
.
Cenyprzyklad.xlsm
|
Pobierz Plik ściągnięto 10 raz(y) 21.76 KB |
|
_________________ .
Jak poprawnie opisać problem: http://www.excelforum.pl/...ika-vt59262.htm
Chcesz precyzyjną odpowiedź - zadaj precyzyjne pytanie. |
|
 | ID posta:
400622
|
|
|
 |
|
|
Maciej Gonet
Excel Expert

Wersja: Win Office 2016
Pomógł: 2027 razy Posty: 6409
|
Wysłany: 18-02-2021, 14:55
|
|
|
Moja propozycja z wykorzystaniem nieco zapomnianych funkcji baz danych.
Warunki zastosowania:
Nagłówki pól nad wartościami tworzącymi zakresy kryteriów muszą być takie jak w oryginalnej tabeli z danymi.
Dane nie muszą być w tabeli Excela, może to być zwykły zakres, ale musi obejmować nagłówki.
W dniu ostatniej transakcji nie może być dwóch (czy więcej) transakcji tym samym towarem.
Cenyprzyklad_BD.xlsx
|
Pobierz Plik ściągnięto 8 raz(y) 10.99 KB |
|
|
 | ID posta:
400628
|
|
|
 |
|
|
umiejead
Excel Expert

Wersja: Win Office 2013
Pomógł: 771 razy Posty: 4155

|
Wysłany: 18-02-2021, 15:24
|
|
|
W miarę dokończyłem (trochę mi zajęło dotarcie z pracy do domu... ):
Kompilacja sortowania (by bezet-1147) i własnej twórczości.
PS. Maciej prawdopodobnie wymyślił coś prostszego...
Kod: | Private Sub CommandButton1_Click()
Dim i&, d&, twr$, j&
Application.ScreenUpdating = False
Columns("A:C").Select
ActiveWorkbook.Worksheets("Arkusz1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Arkusz1").Sort.SortFields.Add Key:=Range("A:A") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Arkusz1").Sort.SortFields.Add Key:=Range("C:C") _
, SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Arkusz1").Sort
.SetRange Range("A:C")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Range("E2").Select
d = Cells(Rows.Count, "A").End(xlUp).Row
Range("E2:G" & d).Delete
j = 2
twr = Cells(2, 1).Value
Cells(j, 5).Value = twr
Cells(j, 6).Value = Cells(2, 3).Value
Cells(j, 7).Value = Cells(2, 2).Value
For i = 2 To d
If Cells(i, 1).Value <> twr Then
j = j + 1
twr = Cells(i, 1).Value
Cells(j, 5).Value = twr
Cells(j, 6).Value = Cells(i, 3).Value
Cells(j, 7).Value = Cells(i, 2).Value
Range("E2:G" & j).Interior.Color = vbYellow
End If
Next i
Application.ScreenUpdating = False
End Sub |
PS1. Na potrzeby testów - ceny pozmieniane.
.
Kopia Cenyprzyklad.xlsm
|
Pobierz Plik ściągnięto 5 raz(y) 23.8 KB |
|
_________________ .
Jak poprawnie opisać problem: http://www.excelforum.pl/...ika-vt59262.htm
Chcesz precyzyjną odpowiedź - zadaj precyzyjne pytanie. |
|
 | ID posta:
400630
|
|
|
 |
|
|
Czeslaw
ExcelSpec

Pomógł: 206 razy Posty: 704
|
Wysłany: 18-02-2021, 16:08
|
|
|
Formula
Kod: | =INDEX(B$2:B$20;AGGREGATE(15;6;ROW($1:$20)/(E2=A$2:A$200)/(C$2:C$200=AGGREGATE(14;6;$C$2:$C$200/($A$2:$A$20=E2);1));1)) |
Cenyprzyklad.xlsx
|
Pobierz Plik ściągnięto 6 raz(y) 9.23 KB |
|
|
 | ID posta:
400635
|
|
|
 |
|
|
DwaNiedźwiedzie
Excel Expert


Wersja: Win Office 2016
Pomógł: 278 razy Posty: 684
|
Wysłany: 18-02-2021, 17:54
|
|
|
amarc, jeżeli faktycznie pracujesz na Excelu 2000, to moje rozwiązanie Ci się nie przyda, ale w tych bardziej bieżących wersjach jest dodatek Power Query (w 2010/13 do darmowego ściągnięcia, w wyższych wbudowany), którym takie rzeczy robi się kilkoma kliknięciami - szczególnie wygodne na większych zbiorach danych.
PS: xfish, tak w tabeli i bez PQ? :)
Cenyprzyklad.xlsx
|
Pobierz Plik ściągnięto 4 raz(y) 17.89 KB |
|
|
 | ID posta:
400639
|
|
|
 |
|
|
xfish
Excel Expert


Wersja: Win Office 2013
Pomógł: 446 razy Posty: 1385
|
Wysłany: 19-02-2021, 07:09
|
|
|
DwaNiedźwiedzie napisał/a: |
PS: xfish, tak w tabeli i bez PQ? :) |
Muszę czasami ćwiczyć formuły, bo zapomnę ;) |
_________________ Pozdrawiam
xFish |
|
 | ID posta:
400659
|
|
|
 |
|
|
amarc
Świeżak

Wersja: Win Office 2000
Posty: 3
|
Wysłany: 19-02-2021, 07:55
|
|
|
dzięki bardzo z pomoc :)
próbowałam z indeksami ale nie wychodziło.
Pomogło stworzenie wartości unikatowych + wyszukaj pionowo |
|
 | ID posta:
400660
|
|
|
 |
|
|
Marecki
Excel Expert


Wersja: Win Office 2019
Pomógł: 2494 razy Posty: 8280
|
Wysłany: 19-02-2021, 08:10
|
|
|
Były już formuły, PQ, VBA, to ja dorzucę jeszcze tabelę przestawną.
Cenyprzyklad(1).xlsx
|
Pobierz Plik ściągnięto 3 raz(y) 22.14 KB |
|
_________________ Hardware - ta część komputera, którą można kopnąć kiedy software przestanie funkcjonować.
Szkolenia z Excela , FB
Office 2019 Professional Plus , Windows 10 x64
Pozdrawiam, były mkkk23 teraz Marecki. |
|
 | ID posta:
400663
|
|
|
 |
|
|
sp3wbe
Starszy Forumowicz

Wersja: Win Office 2016
Posty: 29
|
Wysłany: 19-02-2021, 14:59
|
|
|
Miało być w łatwy sposób to może ten pomysł się Tobie spodoba? Proszę z rezerwą podejść do tego rozwiązania gdyż z VBA mam krótki kontakt. Może Eksperci coś poprawią
może tak.xlsm
|
Pobierz Plik ściągnięto 5 raz(y) 102.56 KB |
|
_________________ Tadek |
|
 | ID posta:
400696
|
|
|
 |
|
|
|
Nie możesz pisać nowych tematów Nie 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 Nie możesz załączać plików na tym forum Możesz ściągać załączniki na tym forum
|
Dodaj temat do Ulubionych Wersja do druku
|
 |
Strona używa plików cookies.
Kliknij tutaj, żeby dowiedzieć się jaki jest cel używania cookies oraz jak zmienić ustawienia cookie w przeglądarce.
Korzystając ze strony użytkownik wyraża zgodę na używanie plików cookies, zgodnie z bieżącymi ustawieniami przeglądarki.
Sprawdź, w jaki sposób przetwarzamy dane osobowe
|