Wypowiedzi
-
Cześć,
potrzebuję pomocy przy prostej kwerendzie, której zadaniem jest zliczenie obserwacji dokonanych w poszczególnych magazynach. Kwerenda co prawda się wykonuje, ale przy próbie filtrowania danych w polu z magazynem wyświetla błąd z tematu tego posta.
Mamy dwie tabele:
1. Obserwacje (Data, Obszar, Obserwator)
2. M_Depo_BBS (Obszar z tabeli Obserwacje, Nazwa stosowana w raporcie)
SELECT Obserwacje.Data, M_Depo_BBS.[Nazwa SC], Count(Obserwacje.Obserwator) AS LiczbaObserwacji
FROM M_Depo_BBS LEFT JOIN Obserwacje ON M_Depo_BBS.[Obszar w bazie BBS] = Obserwacje.Obszar
GROUP BY Obserwacje.Data, M_Depo_BBS.[Nazwa SC], Obserwacje.Browar
HAVING (((Obserwacje.Browar)="Logistyka"));
Nie wiem, co tu jest nie tak. Szukałem podobnych postów, ale jedyne, co znalazłem, dotyczyło pobierania kryterium z formularza i to tam był problem z brakiem spacji przy konkatenacji tekstów. -
Cześć wszystkim,
mam następujący problem: dysponuję dwoma listami, pierwsza składa się z 300 elementów, druga z 500 (ilości dla przykładu). Oznaczmy sobie elementy pierwszej listy przez F001-F300, a elementy drugiej listy przez G001-G500. Każdy z elementów obu list ma pewne przypisane sobie dane (w arkuszu w osobnych arkuszach).
Dla każdych dwóch elementów "oceniam" ich połączenie (według funkcji nieliniowej). Np. połączenie F001+G001 da mi w wyniku 50, a połączenie F001+G002 da mi 30 - w tym przypadku lepsze jest dla mnie dopasowanie F001+G002.
Moim celem jest takie dobranie elementów zbioru G do WSZYSTKICH elementów zbioru F, aby:
- żaden element zbioru G nie został wybrany więcej niż raz,
- suma "ocen" ma być jak najniższa.
Zaprzągłem do pracy Solvera, ale nie potrafi znaleźć satysfakcjonującego mnie rozwiązania. Użyłem poniższej metody:
- Wypisałem wszystkie elementy zbioru F w kolumnie A;
- W kolumnie B ustawiłem dla Solvera komórki zmieniane z warunkami <=500, >=1, całkowite;
- W kolumnie C za pomocą funkcji PRZESUNIĘCIE znalazłem indeksy elementów zbioru G (na podstawie wartości z kolumny B, to po prostu numery wierszy);
- W kolumnie D wyliczam "ocenę" każdego z tych połączeń. W ocenie tej uwzględniam "karę" za zduplikowane wartości w kolumnie B (dodaję np. milion);
- W komórce np. E1 biorę sumę "ocen" i ładuję ją do Solvera jako cel, który ma zminimalizować.
Mimo istnienia rozwiązania dającego w wyniku 0, Solver nie potrafi w ten sposób go znaleźć. Problemem dla niego jest albo ograniczenie całkowitoliczbowe, albo wymóg różnowartościowości.
Szukałem w internecie podobnych tematów, ale wszystkie, które znalazłem opierały się na malutkich zbiorach danych i wykonalne w ich przypadku było stworzenie matrycy, w której dopasowania odbywały się przez wstawienie 1 na przecięciach. W moim przykładzie zbiór danych jest za duży, żeby Solver obsłużył go w ten sposób.
Będę wdzięczny za wszystkie pomysły podejścia do problemu.