2022-06-10T08:41:38+02:00
2022-06-10T11:07:09+02:00
2022-08-12T09:25:31+02:00
ffuser
Sziasztok!
Munkahelyemen használunk egy táblázatot.
Dátum, Terület, Szak, Pozíció, Napszak, Túlórás neve, Megjegyzés
2022-07-08 Gyár1 A4 Gépkezelő1 Nappal12 Böbe csak délig
2022-08-01 Gyár2 B4 Gépkezelő2 Éjjel12 Piri
Volt rajta egy VBA ami nyitáskor sorbarendezte, első körben dátum szerint, aztán szak,, és napszak szerint majd pozíció szerint legvégül.
Sajnos a makró megsérült és nem működik, és senki nem tudja megcsinálni...
Szeretnék segítséget kérni, mert így a táblázatban nagyon nehéz dolgozni.
VBA tudásom annyi, hogy kb. tudok róla hogy létezik és be tudom másolni, pl. egy modulba vagy ThisWorbook lapra...
Köszönöm szépen!
Munkahelyemen használunk egy táblázatot.
Dátum, Terület, Szak, Pozíció, Napszak, Túlórás neve, Megjegyzés
2022-07-08 Gyár1 A4 Gépkezelő1 Nappal12 Böbe csak délig
2022-08-01 Gyár2 B4 Gépkezelő2 Éjjel12 Piri
Volt rajta egy VBA ami nyitáskor sorbarendezte, első körben dátum szerint, aztán szak,, és napszak szerint majd pozíció szerint legvégül.
Sajnos a makró megsérült és nem működik, és senki nem tudja megcsinálni...
Szeretnék segítséget kérni, mert így a táblázatban nagyon nehéz dolgozni.
VBA tudásom annyi, hogy kb. tudok róla hogy létezik és be tudom másolni, pl. egy modulba vagy ThisWorbook lapra...
Köszönöm szépen!
Mutasd a teljes hozzászólást!
Szia!
Hány soros a táblázatod?
Gyanús nekem, hogy Key paraméterekben mindig az első 5 sor szerepel.
Történt-e frissítés vagy valami más változtatás, ami után "elromlott"?
Próbáld meg, hogy ezeket a sorokat kihagyod egy apsztrófot téve eléjük:
Ezután a Key:=Range("A2:A5") típusú paraméterekben csak az A2 stb értékeket hagyd meg
Key:=Range("A2") stb.
A .SetRange Range("A1:G5")
sort módosítsd így:
Üdv.
Hány soros a táblázatod?
Gyanús nekem, hogy Key paraméterekben mindig az első 5 sor szerepel.
Történt-e frissítés vagy valami más változtatás, ami után "elromlott"?
Próbáld meg, hogy ezeket a sorokat kihagyod egy apsztrófot téve eléjük:
'Cells.Select
Cells.EntireColumn.AutoFit
' Cells.Select
Cells.EntireRow.AutoFit
Rows("1:1").Select
Selection.RowHeight = 75
' Columns("A:G").Select
Key:=Range("A2") stb.
A .SetRange Range("A1:G5")
sort módosítsd így:
.SetRange Range("A1").CurrentRegion
Üdv.
Mutasd a teljes hozzászólást!
- ⊓≡⊺∧⊓ɢ⋿∟válasza ffuser (08:41) részére
- 2022.06.10. 08:49
- permalink
Hali!
Mutasd – VBA-forráskóddal/-részlettel –, hogy eddig mivel, hogyan próbálkoztál, meddig jutottál el, mi nem megy, miben/hol akadtál el!
Persze, csak ha segítséget kérsz a problémád megoldásában. Ha mással szeretnéd megoldatni a feladatot, akkor viszont irány a Társalgó állás-rovata (ahol a munka elvégzéséért nyújtott/adott ellenszolgáltatást/-értéket is fel tudod tüntetni). Főleg, ha a munkádhoz kell.
Mutasd a teljes hozzászólást!- Fferiválasza ffuser (08:41) részére
- 2022.06.10. 09:46
- permalink
Szia!
Ha bemásolnád ide a régi makrót, talán könnyebben tudnánk segíteni. Írd hozzá légy szíves azt is, hogy melyik kódlapról másoltad.
Üdv.Mutasd a teljes hozzászólást!- ffuserválasza Fferi (09:46) részére
- 2022.06.10. 10:00
- permalink
Szia!
ez van most:
Sub START()
'
' START Makró
'
' Billentyuparancs: Ctrl+b
'
ActiveSheet.Unprotect "8888"
Cells.Select
Cells.EntireColumn.AutoFit
Cells.Select
Cells.EntireRow.AutoFit
Rows("1:1").Select
Selection.RowHeight = 75
Columns("A:G").Select
ActiveSheet.AutoFilter.ShowAllData
ActiveWorkbook.Worksheets("Túlóra").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Túlóra").Sort.SortFields.Add2 Key:=Range("A2:A5") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Túlóra").Sort.SortFields.Add2 Key:=Range("C2:C5") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Túlóra").Sort.SortFields.Add2 Key:=Range("D2:D5") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Túlóra").Sort.SortFields.Add2 Key:=Range("E2:E5") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Túlóra").Sort.SortFields.Add2 Key:=Range("B2:B5") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Túlóra").Sort
.SetRange Range("A1:G5")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Range("A1").Select
ActiveSheet.Range("$A$1:$G$5").AutoFilter Field:=1, Criteria1:=RGB(217, 217 _
, 217), Operator:=xlFilterCellColor
ActiveSheet.Range("$A$1:$G$5").AutoFilter Field:=1, Criteria1:=RGB(177, 160 _
, 199), Operator:=xlFilterCellColor
Range("A1").End(xlDown).Select
ActiveSheet.Protect "8888"
End Sub
A rendezésen kívül még a multba mutató dátumakat is törli. Az működik, de a rendezés nem...Mutasd a teljes hozzászólást!- ffuserválasza ffuser (10:00) részére
- 2022.06.10. 10:17
- permalink
ez a rész szín szerint szűr. a feltételes formázás megszínezi az aktuális dátum előtti napokat, és így ezzel nem kell foglalkozni...
ActiveSheet.Range("$A$1:$G$5").AutoFilter Field:=1, Criteria1:=RGB(217, 217 _
, 217), Operator:=xlFilterCellColor
ActiveSheet.Range("$A$1:$G$5").AutoFilter Field:=1, Criteria1:=RGB(177, 160 _
, 199), Operator:=xlFilterCellColor
viszont a többi nem működik... azaz néha nem rendezi sorba de nem értem miértMutasd a teljes hozzászólást!- Szia!
Hány soros a táblázatod?
Gyanús nekem, hogy Key paraméterekben mindig az első 5 sor szerepel.
Történt-e frissítés vagy valami más változtatás, ami után "elromlott"?
Próbáld meg, hogy ezeket a sorokat kihagyod egy apsztrófot téve eléjük:
'Cells.Select Cells.EntireColumn.AutoFit ' Cells.Select Cells.EntireRow.AutoFit Rows("1:1").Select Selection.RowHeight = 75 ' Columns("A:G").Select
Key:=Range("A2") stb.
A .SetRange Range("A1:G5")
sort módosítsd így:
.SetRange Range("A1").CurrentRegion
Üdv.Mutasd a teljes hozzászólást!