Kezdőlap › Fórumok › Excel programozás › Hivatkozás tömbkonstans elemeire VBA › Hozzászólás: Hivatkozás tömbkonstans elemeire VBA
Igen, erre gondoltam. Mit össze keresetem mindenhol, de sehol nem bukkantam rá. Pedig az Evaluate függvénnyel már dolgoztam is. A Match pedig pofátlanul logikusnak tűnik, mert a legtöbb angol fórumon inkább csak a min és max elemet keresték, de úgy tűnik igazolódni látszik, hogy sok esetben a legegyszerűbb megoldás a legkézenfekvőbb
Ezer köszönet. Örülök, hogy van ez a fórum. Persze még mindig nem működik valamiért, de nagyon sokat segítettél! Így néz ki egyébként a kis rutinom, aminek nem tetszik sem a nevek.Count, a nevek(i)-nél pedig azt mondja, hogy a tartományon kívül esik:
Sub ment()
Dim nevek
nevek = [dolgozok]
t = UserForm1.TextBox3.Value ‘ Melyik hónapra szeretnénk a kimutatást? Ha üres, összes hónapra, azaz éves.
If t <> „” Then
For i = 1 To nevek.Count
i = nevek(i)
ActiveSheet.PivotTables(„Kimutatás1”).PivotFields(„Hónap”).PivotFilters.Add Type:=xlCaptionEquals, Value1:=t
ActiveSheet.PivotTables(„Kimutatás1”).PivotFields(„Név”).PivotFilters.Add Type:=xlCaptionEquals, Value1:=i
fname = Left(ActiveWorkbook.Name, 8)
ChDir („c:\temporary\Munkaidő”)
ActiveWorkbook.ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=i & ” ” & t & ” ” & fname & ” ” & Date, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=False
ActiveSheet.PivotTables(„Kimutatás1”).PivotFields.ClearAllFilters
i = WorksheetFunction.Match(i, nevek, 0)
Next i
Else
For i = 1 To nevek.Count
i = nevek(i)
ActiveSheet.PivotTables(„Kimutatás1”).PivotFields(„Név”).PivotFilters.Add Type:=xlCaptionEquals, Value1:=i
fname = Left(ActiveWorkbook.Name, 8)
ChDir („c:\Users\Andras\Documents”)
ActiveWorkbook.ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=i & ” ” & „éves” & ” ” & fname & ” ” & Date, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=False
ActiveSheet.PivotTables(„Kimutatás1”).PivotFields(„Név”).ClearAllFilters
i = WorksheetFunction.Match(i, nevek, 0)
Next i
End If
ActiveSheet.PivotTables(„Kimutatás1”).PivotFields.ClearAllFilters
End Sub
- A hozzászólás módosításra került: 8 years, 3 months telt el-7even.