Czy ktoś się spotkał z takim błędem przy odświeżaniu tabeli przestawnej ?
źródłem TP jest zapytanie PQ

Nie możemy uzyskać danych z modelu danych. Komunikat o błędzie:
Wystąpił nieoczekiwany błąd (plik ,,pcminorojcoll.inl", wiersz 109, funkcja "PCMinorObjectCollection::SetNameAndUpdateCollection").

#excel #vba #analizadanych
biju - Czy ktoś się spotkał z takim błędem przy odświeżaniu tabeli przestawnej ?
źró...

źródło: comment_U95l4zH5YGzchIWA4puJ7691k9pfieOa.jpg

Pobierz
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Treść przeznaczona dla osób powyżej 18 roku życia...
  • 13
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Panowie Mirki, temat #vba, potrzebuję jak najszybciej nauczyć się makra, chociaż tworzenia przez rejestrator. Jakieś godne polecenia materiały - książki, tutoriale, kursy online?
#excel
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

via Wykop Mobilny (Android)
  • 1
@wenszu87: bo rejestrator sie wysypie juz przy nagrywaniu akcji tworzenia nowego pliku. Pozatym nagranie takiego procesu sprawia, ze w kodzie wszystko jest na sztywno "hardcoded" przez co i tak nagrane makro przydałoby sie poprawić w edytorze.
Jak ogarniasz angielski to polecam "vba for dummies". Wszystko wytlumaczone jak dla dziecka i mi bardzo na początku pomogło ogarnąć co i jak.
  • Odpowiedz
jak w #excel ustawić hasło/ukryć arkusz w pliku tak aby był całkowicie niedostępny dla użytkownika pliku. Chodzi mi o to żeby nie dało się go podejrzeć, odwołać się do niego z innego arkusza ani odkryć go przez #vba aby jedyny możliwy dostęp do niego był przez jakieś ustawione wcześniej hasło
  • 15
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mam taki kod:

Sub makro1()
Dim LR As Long
LR = Cells(Rows.Count, ActiveCell.Column).End(xlUp).Row - 1
ActiveCell.FormulaR1C1 = "=SUBTOTAL(3,R[2]C:R[" & LR & "]C)"
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Defender: Jeżeli makro ma działać na dowolnym aktywnym arkuszu, zamień ActiveCell na Range("A1") (lub w skróconej formie na [A1]). Jeśli chcesz, żeby działało tylko na jakimś konkretnym, użyj Sheets("nazwa akrusza").Range("A1") lub ['nazwa arkusza'!A1].
  • Odpowiedz
Siema mirki. Mam problem w vba, odrazu mowie ze jestem amatorem. Próbuję napisać makro, żeby w excelu scalało mi komórki w taki sposob: c2 i c3, pozniej d2 i d3 do momentu az trafia na jakąś niepustą komórkę. Kod wyglada tak:
Range("c2" ," c3"). Select
Do while activecell= ""
Selection. Mergecells = true
Selection. Offset(1,0).select
Loop
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Może ktoś mi podpowie,
Mam w arkuszu Excel w kolumnie A dane, które mają być w zapytaniu SQL jako warunek w where.
Następnie po wyfiltrowaniu dane z SQL mają się przenosić do kolumny B w Excelu.
Myślałem nad tym, aby zrobić pętle w VBA i w każdym kroku przypisywać zmienna i wyrzucać wynik.

#vba #sql
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@michal0110: Do zrobienia, choć warto rozważyć opcję połączenia wszystkich warunków, wyciągnięcia pełnych danych jednym zapytaniem i rozbicia ich już po stronie VBA - wszystko zależy od szczegółów, których niewiele tu podałeś. Rozważ też Power Query, tam to zapewne będzie dużo łatwiejsze do zrealizowania.
  • Odpowiedz
Może dlatego, że nie jestem typowo ścisłowcem.


@bart_212: W takim razie dużo bardzie przypadnie Ci do gustu WiseOwl z Youtube. Bardzo dobrze i na spokojnie tłumaczy. Zawsze wszystko krok po kroku. Jest przy tym bardzo spójny i wprowadza w optymalnym tempie coraz to trudniejsze zagadnienia w danym temacie.
Sam w trakcie nauki nikogo lepszego od niego nie znalazłem.
  • Odpowiedz
Mam pytanko, bo ostatni raz coś bardziej skomplikowanego w excelu robiłem z 5 lat temu i nic już nie pamiętam.
W skrócie: mam 5 plików, w których jest kilka kolumn, przy czym mnie interesują trzy: Imię, Nazwisko i wynik, gdzie jest wartość liczbowa w zakresie 1-10. Co ważne imiona i nazwiska w każdym pliku niekoniecznie się pokrywają, w jednym może być 50 rekordów, w drugim 60 i mogą być w innej kolejność.
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@SKYFander: jeśli lista wszystkich osób jest stała (bez względu w jakich plikach występują) to wystarczy kilka podstawowych formuł (JEŻELI+INDEKS+PODAJ.POZYCJĘ), jeśli nie to w grę wchodzi VBA albo Power Query, ale pewnie "gotowego szablonu" nie znajdziesz.
  • Odpowiedz
@SKYFander: J/w - w najprostszym wariancie w Power Query to trzy kroki do wyklikania z menu (wskazanie folderu z plikami, rozwinięcie zawartości arkuszy, usunięcie zbędnych kolumn). Po zmianie plików źródłowych wystarczy odświeżyć tabelę z wynikami.
  • Odpowiedz
@1001001: Hej. dzieki za pomoc. Zrobilem to tak jak ponizej. Zastanawiam sie teraz jak to zmienic aby wynik mi zbieralo poziomo a nie pionowo?

Sub find()

Dim Fnd As Variant, fAdr As String, lr As
  • Odpowiedz