-
Mobilarena
A Microsoft Excel topic célja segítséget kérni és nyújtani Excellel kapcsolatos problémákra.
Kérdés felvetése előtt olvasd el, ha még nem tetted.
Új hozzászólás Aktív témák
-
föccer
nagyúr
válasz
Polllen #39720 üzenetére
Ismétlődések eltávolítása. Alapvetően nem járható ez az út, pedig sok problémától megszabadítana. Sok ezer soros adatbázist kell átfésűlni, kb 20-25 oszloppal. Alapvetően be van képletezve/makrózva a tábla és ha kiválasztok egy adott szűrési rendszert, akkor a képletek számolják a szükséges adatokat (összesít függvény), ami alapján elvégzem a kiértékeléseket (< >=), majd makróval átdobom az egészet a megfelelő helyre. Így viszonylag gyors, de még jobb lenne ha lenne ilyen funkció, így nem kellene az adatokhoz hozzá piszkálni, csak 1 segéd oszloppal lehetne machinálni.
üdv, föccer
-
Fferi50
Topikgazda
válasz
Polllen #34094 üzenetére
Szia!
Talán azt sem szereti, hogy Sheet nevű változót használsz, mivel az foglalt név! (Elvileg lehet használni, de akkor teljes névvel kell rá hivatkozni, nem elég a Sheet szerintem). Én mindenesetre messzire elkerülném a használatát.
Esetleg aktíválni kell a frissítéshez a munkalapotÜdv.
-
Delila_1
veterán
válasz
Polllen #33414 üzenetére
A teljes oszlopot szövegessé kell tenned egy üres oszlopban.
=A2 & "" (dupla idézőjel, üres string).
Végig másolod, majd a teljes oszlopot irányítottan, értékként beilleszted az eredeti helyére. Most már szövegként kezeli a csakis számjegyeket tartalmazó cikkszámokat is, rendbe jön a keresés. -
Fferi50
Topikgazda
-
Fferi50
Topikgazda
válasz
Polllen #33386 üzenetére
Szia!
Mivel az E betű a számok tudományos ábrázolásának része, ezért sajnos ez a két "karaktersorozat" ugyanazt a számértéket jelenti.
Ezért praktikusan azt tudom javasolni, hogy az E karaktert hagyjátok ki a cikkszámokból
Célravezető lehet még az is, ha a betű a cikkszám elején van, ebben az esetben szintén nincs "keveredés".Üdv.
-
#36268800
törölt tag
válasz
Polllen #31464 üzenetére
Ezt tudom, de nem jó úgy. Az időpontokat teljesen rosszul jeleníti meg, a videóban is ezzel küszködik a faszi és végül ilyen közelítő meg elég macerás módon oldja meg, de tutira van egyszerűbb és jobb megoldás is, amit egy középiskolástól el lehet várni érettségin. Ha esetleg megtennéd és vetnél rá egy pillantást, nagyon sokat segítenél vele! (és ez mindenkinek szól)
-
Polllen
nagyúr
-
föccer
nagyúr
válasz
Polllen #30850 üzenetére
Bár nem teljesen értem, hogy mi a feladat, de a =KEREKÍTÉS() függvény erre jó. Meg lehet adni benne, hogy 50-re kerekítsen. Ehhez tartozik még a =PLAFON() illetve a =PADLÓ() függvény is (vag lehet, hogy kerekít.le és kerekít.fel néven van, erre most nem emlékszem.
(#30849) Gyufaaa: Mondtam, hogy formázni kell a megjelent értéket.
üdv, föccer
-
bsh
addikt
válasz
Polllen #29677 üzenetére
az első sorban a Cells()-ek kontextusa nincs kvalifikálva. helyesen:
Worksheets("Layout").Range(Worksheets("Layout").Cells(1, 1), Worksheets("Layout").Cells(1, wk)).Copy Destination:=Worksheets("Munka2").Range("A1")
hasonlóképpen furcsaságok lehetnek, ha a wk változó sincs az adott kontextusban definiálva.a második verzióban még az eleje is rossz:
Worksheets(ws1).Range(Cells(1, 1), Cells(1, wk)).Copy...
helyesen:
ws1.Range(Cells(1, 1), Cells(1, wk)).Copy... -
Delila_1
veterán
-
Delila_1
veterán
válasz
Polllen #27642 üzenetére
Az kell bele, mert több azonos szállítólevél is lehet. Ha ezeknek új lapot próbálnék bevinni, egyrészt hibára futna, másrészt minden sort külön lapra tenne.
A lapokat egy új kigyűjtés előtt egy makróval törölheted.
Sub Laptorles()
Dim lap As Integer
Application.DisplayAlerts = False
For lap = Sheets.Count To 2 Step -1
Sheets(lap).Delete
Next
Application.DisplayAlerts = True
End Sub -
Delila_1
veterán
válasz
Polllen #27637 üzenetére
Nem túl bonyolult.
A makró elején töröltethettem volna az első lapon kívül a többit, hogy "tiszta lappal" kezdjünk, de nem ismerem a füzeted felépítését. Lehet, hogy vannak benne nem törölhető lapok.A makró az első lap sorain megy végig. Mikor a sorban lévő szállítólevél nevével egyező lap van a füzetben, az első üres sorába bemásolja az aktuális sort. Ha nincs olyan lap, akkor a füzet végén létrehozza, átmásolja a címsort az első lapról, majd alá az aktuális sort.
Sub Szall_Lev()
Dim sor As Long, usor As Long, usorIde As Long, nev
Dim WS As Worksheet, WSIde As Worksheet
Application.ScreenUpdating = False
Set WS = Sheets(1)
WS.Select
usor = Range("A" & Rows.Count).End(xlUp).Row
For sor = 2 To usor
On Error Resume Next
Set nev = Sheets(Cells(sor, "A") & "")
If Err.Number <> 0 Then
Sheets.Add After:=Sheets(Sheets.Count)
ActiveSheet.Name = WS.Cells(sor, "A")
WS.Rows(1).Copy ActiveSheet.Range("A1")
WS.Select
End If
On Error GoTo 0
Set WSIde = Sheets(WS.Cells(sor, "A") & "")
usorIde = WSIde.Range("A" & Rows.Count).End(xlUp).Row + 1
Rows(sor).Copy WSIde.Range("A" & usorIde)
Next
Sheets(1).Activate
Application.ScreenUpdating = True
MsgBox "Kész", vbInformation
End Sub -
Fferi50
Topikgazda
válasz
Polllen #25132 üzenetére
Szia!
Akkor lenne igazad, ha csak egy munkalapot tartalmazhatna, de ez nem így van. (Az activesheet az egy darab munkalap, az activeworkbook szintén egy darab munkafüzet -- kiválasztott (selected) viszont több is lehet.)
A selectedsheets egy gyűjtemény, magában foglalja az összes kiválasztott munkalapot.
Idézet a help-ből:
"Window.SelectedSheets Property
Returns a Sheets collection that represents all the selected sheets in the specified window. Read-only."
Ha a művelet eredményét nem szeretnénk viszontlátni, akkor nem kell a konkrét munkalapot megnevezni, szép sorban megmutatja az összes kijelöltet.
De ha szükség van a nyomtatás megtörténtének információjára, akkor már konkrét munkalapra kell hivatkozni - hiszen lehet, hogy egyik munkalapot kinyomtatod, másokat pedig nem, akkor most mi legyen a logikai változó eredménye??Üdv.
-
KaliJoe
tag
válasz
Polllen #25127 üzenetére
Szia Pollen,
Ez biztos nem megoldás. Mivel a .PrintPreview súgójában benne van az a Variant változó aminek egy munkalapra kell mutatnia, és akkor kérhető ki az Igaz / Hamis érték... a súgó szerint. Egyébként a jelzett "hiányzó változó" hibaüzenettel reagál. De nyilván nem csinálok valamit jól, ha végül nem ez történik.
Ehhez kellene a segítség, h az történjen, mit gondolok :-) -
KaliJoe
tag
válasz
Polllen #25117 üzenetére
Szia Pollen és Delila_1,
Azt hiszem az irány jó, de makacsul dobja a hibaüzeneteket, arra hivatkozva, h definiáljak változót. Készítettem Variant típusút, értékét az aktuális munkalapra irányítottam... de az nem érdekli, csak követel...
...
Dim wsh_Űrlap As Variant
wsh_Űrlap = Worksheets("Űrlap Nyomtatáshoz")
...
If ActiveWindow.SelectedSheets.PrintPreview(wsh_Űrlap) = True Then
Worksheets("Alapértékek").Select
ActiveSheet.Unprotect
Worksheets("Alapértékek").Cells(4, "J").Value = Worksheets("Űrlap Nyomtatáshoz").Cells(2, "M").Value + 1
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End If
... -
Wyll
őstag
válasz
Polllen #25099 üzenetére
Pedig ha megnézem a típust (rákattintok egérrel a szóban forgó cellára, és megnézem fent a ribbonon, hogy mit ír a számformátumának), akkor Általános-t ír.
Most vagy az van, hogy ez így van jól, és még kéne még egy utolsó művelet a VBA-ba (pl. hasamraütök: Run), vagy ez valami kis bug, de akkor is VBA-ból kell megoldanom
-
Fferi50
Topikgazda
válasz
Polllen #25069 üzenetére
Szia!
Írd így:
"=VLOOKUP(RC[-9],'[" & valtozo & "]Shortage'!C1:C10,10,0)"A valtozo szöveges változó (string) tartalmazza a fájl nevét - ha teljes elérési útvonalat is kell megadni, akkor viszont:
"=VLOOKUP(RC[-9],'" & utvonal & "[" & valtozo & "]Shortage'!C1:C10,10,0)"Az utvonal tartalmazza az elérési utat, a végén backslash van.
Üdv.
-
m.zmrzlina
senior tag
-
Új hozzászólás Aktív témák
Hirdetés
- Kompakt vízhűtés
- Tőzsde és gazdaság
- Kormányok / autós szimulátorok topikja
- Melyik tápegységet vegyem?
- Óra topik
- Házimozi belépő szinten
- Kevesebb dolgozó kell az Amazonnak, AI veszi át a rutinfeladatokat
- Milyen processzort vegyek?
- ASZTALI GÉP / ALKATRÉSZ beárazás
- Interactive Brokers társalgó
- További aktív témák...
- Antivírus szoftverek, VPN
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Kaspersky, McAfee, Norton, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! Automatikus 0-24
- Gyermek PC játékok
- ÁRGARANCIA! Épített KomPhone i5 14600KF 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- iKing.Hu - Apple iPhone 14 Plus - Yellow - Használt, karcmentes
- Lenovo Legion Pro 5 16IRX9
- Wacom Cintiq DTK-2260 - Digitális rajztábla
- Csere-beszámítás! Számítógép PC Játékra! I3 14100F / RTX 3060 12GB / 32GB DDR4 / 500GB SSD
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft
Város: Budapest