• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

VBA i tabela przestawna

0 głosów
791 wizyt
pytanie zadane 27 września 2022 w Visual Basic przez magda_19 Gaduła (3,080 p.)
edycja 27 września 2022 przez magda_19

Witam,

Mam pewną tabelkę, i chcę pokazać z niej pewne dane dynamicznie, czyli zmieniające się od aktualnych potrzeb. Excel wyrzuca mi błąd, mimo że kod jest napisany tak aby działało to niezależnie od nazwy Sheets. Błąd znajduje się polu rozpoczynającym się od 'Active Sheet'. Table Destination powinno działać dynamicznie, być może błąd tkwi w Table Name. Nazwa błędu: 'Invalid procedure call or argument'.

Sub test2()
'
' test2 Macro
'
'    Application.CutCopyMode = False
    
    lr = Cells(Rows.Count, 1).End(xlUp).Row
    
    dataWS = ActiveSheet.Name
    
    Sheets.Add
    
    ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
        "'" & dataWS & "'!A2:P" & lr, Version:=8).CreatePivotTable TableDestination:=pivotWS & "'!R3C1'", TableName:="PivotTable2", DefaultVersion:=8
    Sheets(pivotWS).Select
    
    Cells(3, 1).Select
    With ActiveSheet.PivotTables("PivotTable2")

 

1 odpowiedź

0 głosów
odpowiedź 1 października 2022 przez VBService Ekspert (256,600 p.)

Sprawdź czy Twoja składnia Sheets.Add jest prawidłowa.

Podobne pytania

0 głosów
1 odpowiedź 3,019 wizyt
pytanie zadane 4 kwietnia 2018 w Visual Basic przez krzysztooof94 Początkujący (350 p.)
0 głosów
0 odpowiedzi 396 wizyt
0 głosów
1 odpowiedź 559 wizyt
pytanie zadane 1 września 2022 w Visual Basic przez morking Nowicjusz (210 p.)

93,695 zapytań

142,612 odpowiedzi

323,223 komentarzy

63,224 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...