- Honor 400 Pro - gép a képben
- Samsung Galaxy S20 és S20+ duplateszt
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- iPhone topik
- Motorola Razr 60 Ultra - ez a kagyló könnyen megfő
- Nem lett arányos a fogyókúra
- Xiaomi 14T - nem baj, hogy nem Pro
- Apple iPhone 16 Pro - rutinvizsga
- Az Oppo Find X8 Ultra lett a legvékonyabb kameramobil
- Apple Watch
-
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
-
Fferi50
Topikgazda
válasz
DopeBob #51260 üzenetére
Szia!
Nem nagyon látok más megoldási lehetőséget (persze ettől még lehet). Talán egyszerűbbé teszi a helyzetet, ha minden adatsort külön-külön veszel fel, úgy ahogyan a képen látod:
Ezután adatsoronként végig csinálod a következőt:
Kijelölöd az adatsort - vonal nincs - a vége időponthoz tartozó adatpontot kijelölöd - vonal automatikus.
Ezt kapod eredménynek:
Illetve:
A diagramot egy lépésben létre tudod hozni az adatok kijelölése után, majd végig lehet/kell lépkedni minden adatsoron az előbbi műveletekkel.
Persze makrót lehet írni rá, de az is időbe telik.
Üdv.
Ps. tudom, sok adatsornál nem kevés idő, de más lehetőséget most nem látok. -
Fferi50
Topikgazda
válasz
DopeBob #47182 üzenetére
Szia!
" de nem találtam semmi olyan, hogy rejtett, szűrt, vagy bármi egyértelműbb"
Pedig van:Range.SpecialCells(xlCelltypeVisible) csak a látható cellákat tartalmazza.
Viszont figyelembe kell venni, hogy a szűrés eredménye nem feltétlenül lesz összefüggő tartomány. Ezért a szűrt tartomány egy oszlopát kell használni.
Pl.Range("A1:X100").SpecialCells(xlCelltypeVisible).Columns(1).Cells.Count
megmutatja a szűrés eredmény sorainak számát - ha fejléc van és 1 az eredmény, akkor nincs szűrt sor.
Az oszlop celláin végig lehet menni aFOR EACH .... NEXT
ciklussal. Ekkor csak a látható sorok adataival tudsz foglalkozni.
Üdv. -
slashing
senior tag
válasz
DopeBob #22246 üzenetére
=SZUM(HA(HÓNAP(A1:A5)=1;B1:B5;)) ctrl+shift+enter....
Összeadja azokat ami 1. hó mivel mindenhol csak 1-esek vagy 0-ák vannak így nem kell külön nézni hogy hány 1-es van a második oszlopban mivel az összegük annyi lesz mint ahány sorban 1-es van.... ha jól gondoltam a feladatot
(#22244) botond187: egyszerű keres/csere ctrl+f ?
-
-
DopeBob
addikt
-
Delila_1
veterán
válasz
DopeBob #22062 üzenetére
"a mai naphoz képes egy héten belülre kerül".
Ezt úgy érted, hogy az aktuális dátumhoz képest az 1 héttel előbbi, és 1 héttel későbbi dátumot tartalmazó cellákat akarod formázni? Ha igen, a képlet a lenti (persze ha A1-ben kezdődnek a dátumaid.
=ÉS(A1>=MA()-7;A1<=MA()+7)
-
pdw_ph
tag
-
válasz
DopeBob #13453 üzenetére
Private Sub CommandButton1_Click()
Dim MyParamsRateValue As Integer
Dim MyParamsValue As Integer
Dim MyParamsCount As Integer
Dim MyRange As Range
Dim MyParams As Variant
'NMÉ képlet RÁTA paraméterének értéke
MyParamsRateValue = 25
'NMÉ képlet ÉRTÉK paramétereinek értéke
MyParamsValue = 1000
'NMÉ képlet ÉRTÉK paraméterinek a száma
MyParamsCount = 1
'A CELLA címe, ahova képletet szánod
Set MyRange = Range("A5")
MyParams = "=NPV(" & MyParamsRateValue
For i = 1 To MyParamsCount
MyParams = MyParams & "," & MyParamsValue
Next i
MyParams = MyParams & ")"
MyRange.Formula = MyParams
End Sub -
válasz
DopeBob #13453 üzenetére
Akkor légy oly szíves vagy írni, vagy az adatlapodon feltüntetni, mert nem tudhatjuk, én meg 2010 x64-et használok, amit adok megoldást az ebben biztosan megy, de ha valaki korábbi verziót használ (és tudom, mert írta, vagy feltüntette az adatlapján, aláírásában stb), akkor igyekszem ahhoz alakítani a megoldást.
Elméletben lehet rá makrót írni.
-
válasz
DopeBob #13450 üzenetére
"Az NMÉ képlet paramétereit be lehet valahogy egyszerűen írni, ha mondjuk 100 nagyságrendű paramétere van?"
Nem, mivel max 29 értéket lehet megadni. -
m.zmrzlina
senior tag
válasz
DopeBob #12900 üzenetére
Nem tudom milyen Excel verziót használsz de a 2007 előttieknél ez a módszer működik. Valójában arról szól, hogy beállítod a kérdéses lap visible tulajdonságát xlSheetVeryHidden-re majd egy jelszóval levéded a projektet. Excel97-tel kipróbáltam, működik.
2007-nél kicsit más a helyzet ott ez az út makrómentes (*.xlsx) fájllal nem járható. Vagy csak én csinálok valamit rosszul.
-
-
ArchElf
addikt
válasz
DopeBob #10531 üzenetére
Alapból nem eszi meg, mert a vesszó az tizedesjegy (tehát a bevitelt számként értelmezi - a dátumot pedig az excel úgy tárolja (egyész szám - dátum; törtszám - óra-perc-másodperc-töredék). Pl ha 12,30-at írsz be, aakorazt automatikusan 1900.01.12 07:12-re konvertálja - de ahogy előttem leírták, két oszloppal már megoldható (vagy esetleg makróval, ami az összes bevitel után lefut az oszlopra).
Esetleg makróból:
Private Sub Worksheet_Change(ByVal Target As Range)
'+ jelre átalakít dátummá
'a 3. oszlopban
Dim OSZLOPSZÁM As Integer
OSZLOPSZÁM = 3
Dim c As Range
Dim dt As Date
If (Target.Columns.Count = 1 And Target.Column = OSZLOPSZÁM) Then
For Each c In Target.Cells
If InStr(c.Value, "+") > 0 Then
dt = CDate(Replace(c.Value, "+", ":", 1, 2))
c.Value = dt
End If
Next
End If
End SubAE
-
bugizozi
őstag
válasz
DopeBob #10278 üzenetére
Szia,
ez a probléma engem is foglalkoztat
hasonló a szitu: Excelbe szedek át adatot gombnyomásra makróval Accessből, és amikor egyszer lefutott a kód és az Excel nyitva marad, akkor az Access-t - ahogy írtad - csak írásvédettként lehet megnyitni
vannak a kódomban olyan részek, hogyMode=Share Deny Write;
....
Jet OLEDB:Database Locking Mode=0;ezeket próbáltam variálni kevés sikerrel
Valakinek valami ötlet?
Ha szükséges bemásolhatom azt a részt a programból ami az Access-re vonatkozik...
Előre is köszönöm a segítő hsz-okat!
-
m.zmrzlina
senior tag
válasz
DopeBob #10197 üzenetére
Nyilván te is észrevetted, hogy a #10200-ban lévő képlet elég könnyen hibázik.Pl ha a megnevezés két szóból áll és szóköz van közte, vagy ha előfordul benne a "db"karaktersorozat.
Ennek kiküszöbölésére nyiss a VB szerkesztőben egy új modult és másold bele ezt:
Function CSAKSZAM(szoveg As String)
Dim szam As String, i As Integer
szam = ""
For i = 1 To Len(szoveg)
If Asc(Mid(szoveg, i, 1)) <= 58 And Asc(Mid(szoveg, i, 1)) >= 47 Then
szam = szam & Mid(szoveg, i, 1)
End If
Next i
CSAKSZAM = szam
End FunctionEttől lesz egy CSAKSZAM() nevű új függvényed amit nagyon könnyen tudsz használni a következőképpen:
Ha az ÉRTÉK() fv-be beágyazod ahogyan a képen van akkor számolni is tudsz a darabszámokkal.
-
-
válasz
DopeBob #10121 üzenetére
Igen, megoldható, a szabályban az ÉRVÉNYESSÉG-ben megadod a színezendő tartományt
(Itt a B oszlopban 5-nél nagyobb számok esetén színezi, az A oszlop megfelelő celláit) -
perfag
aktív tag
válasz
DopeBob #9263 üzenetére
Nézd meg Chip Pearson-nál és John Walkenbach-nál. Esetleg az ozgrid-on.
-
-
válasz
DopeBob #9249 üzenetére
Osztom perfag válaszát, azzal kiegészítve, ha már makróban kezeled a cellák zárolását(és a lapvédelemhez mondjuk jelszó is van beállítva), akkor arrról nem szabad megfeledkezni, hogy magát a makrót is levédd jelszóval, hisz ha valaki belenézhet, akkor onnan kiszedheti a jelszót és ez esetben adtunk a guanónak egy nagy pofont...
-
-
bugizozi
őstag
válasz
DopeBob #9231 üzenetére
hja mostmár értem hogy mi a problémád
sajnis eddig én nem használtam ilyet, ehhez nem értekbár lényegesen egyszerűb lenne kiköszöbölni vhogy ezt a hibát, mint amit én ajálottam makrós dolgot
esetleg próbáltad azt amit Delila_1 írt? sry lehet hogy próbáltad, csak azért kérdezem, mert nem írtad ide a fórumba -
-
bugizozi
őstag
válasz
DopeBob #9229 üzenetére
Én ilyet csináltam meloban...a tiéd szvsz annyiban különbözne hogy konkrét nevet kellene megadni meg pár dolgot kivenni és akkor láható hogy pl adott hónapban mennyit dolgozott az illető...(az orak oszlopban a végén automatice összeadja mindig az órákat)
Amúgy lehet hogy ezt a dátumos problémádat is meg lehetne valahogy oldani és az egyszerűbb lenne, de arra sajna nem tudok megoldást -
válasz
DopeBob #9229 üzenetére
Azért nem értem/tudom, hogy Nálad mi lehet a gond, mert Nálam(Office 2010 x64-et használok), ha beimportálom az adatokat egy megadott táblából, akkor az excel automatikusan ellátja szűrővel, mindenféle beavatkozás nélkül.
Itt a gyári NorthWind adatbázis egyik tábláját importáltam be: [link]Na most ha ebből csinálok egy kimutatást, akkor megint teljesen automatikusan ott a szűrő: [link]
Az adatok külön beimportálását természetesen ki lehet hagyni, és közvetlenül kimutatást készíteni az adott adatbázis, adott táblája alapján, csak ez esetben nem szabad megfeledkezni, hogy a Jelentésszűrő csoportba be kell "húzni"/másolni azt a mezőt, ami alapján szűrni szeretnél [Bekeretezett részek]
-
bugizozi
őstag
válasz
DopeBob #9227 üzenetére
Szóval, az adatforrás egy ACCESS adatbázis, a lényeges részek most: dátum, név, ledolgozott óra.
Excellel szerettem volna egy egyszerű kis kimutatást, adott hónapban az emberkéknek hány ledolgozott órájuk van.Amikor az Excel külső adatot importál accessből, akkor az Adatimportálásnál van egy olyan gomb, hogy "Lekérdezés szerkesztése..." és ott te pl így szerkeszthetnéd a lekérdezést és megkapdnád az adott hónapra vonatkozó adatokat
(office 2002
de biztos van ilyen lehetőség az újban is)
Esetleg ha nagyon perverz vagy akkor ezt csinálhatnád makróban, és akkor megadsz 2 cellában 2 dátumot és egy gomb lenyomásával megkapdnád az adott időszakra vonatkozóan ki mennyit dolgozott
ha érdekel segíthetek bennek, mert jelenleg ilyeneket csinálok a munkámban
-
-
Delila_1
veterán
válasz
DopeBob #8997 üzenetére
Mintának itt van egy olyan eseménykezelő makró.
A keresendő értéket a C oszlopban adod meg, ennek a sorában az A oszlopba beírja az fkeres függvényt, ami a D:E tartomány 2. oszlopában talált értéket adja vissza.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 3 Then
Application.DisplayAlerts = False
Cells(Target.Row, 1) = "=VLOOKUP(C" & Target.Row & ",D:E,2,0)"
Application.DisplayAlerts = True
End If
End SubA képletben a C helyére a hosszú útvonalat add meg, ahogy Fire írta.
-
-
-
válasz
DopeBob #8995 üzenetére
Jaaa, az más...
Így függvényt szúrhatsz be egy cellába
Range("B1").Formula = "=SUM(A1:A10)"
Ez meg a konkrét kérdésedre
Macroban az angol függvénynevekre lehet hivatkozni, az, hogy egy magyar függvénynek mi is az angol "neve", ahhoz itt találsz segítséget: FUNCS.XLS a lényeg
-
-
DopeBob
addikt
válasz
DopeBob #8987 üzenetére
Bocsánat tárgytalan, összegányoltam közben én is, csak előbb elnéztem valamit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Cell As Range
For Each Cell In Target
With Cell
If .Column = 2 Then
Cells(.Row, 1).Value = Date
End If
End With
Next Cell
End SubHátha valakinek segít
Ha a 2. oszlopba érték kerul, akkor az A oszloba beírja mellé a mai dátumot.
Viszont valami nem megy, Függvényt hogy tudok beszűrni egy cellába?
-
DopeBob
addikt
válasz
DopeBob #8027 üzenetére
Ameddig nem lesz jobb, itt egy ilyen tákolós megoldás
Egy VB Script ami elindítja az excelt megnyitja a fájlt aztán bezárja:
Option Explicit
On Error Resume Next
ExcelMacroExample
Sub ExcelMacroExample()
Dim xlApp
Dim xlBookSet xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Open("C:\Temp\Munkafüzet2.xlsm", 0, True)xlApp.Quit
Set xlBook = Nothing
Set xlApp = NothingEnd Sub
Meg egy makró ami szétbobja a munkafüzetet munkalapokra
'Creates an individual workbook for each worksheet in the active workbook.
Dim wbDest As Workbook
Dim wbSource As Workbook
Dim sht As Object 'Could be chart, worksheet, Excel 4.0 macro,etc.
Dim strSavePath As StringApplication.ScreenUpdating = False 'Don't show any screen movement
strSavePath = "C:\Temp\" 'Change this to suit your needs
Set wbSource = ActiveWorkbook
For Each sht In wbSource.Sheets
sht.Copy
Set wbDest = ActiveWorkbook
wbDest.SaveAs strSavePath & sht.Name
wbDest.Close 'Remove this if you don't want each book closed after saving.
NextApplication.ScreenUpdating = True
Ha a Workbook.Open-hez teszed, lefut minden indulások.
Elvileg a VBSriptbe is be lehetne írni, hogy futtasson makrót ( xlApp.Run "MyMacro" ) de nálam nem akar menni valamiért
Az e-mail küldés meg megy akkor.
-
-
Delila_1
veterán
válasz
DopeBob #7999 üzenetére
Fire most nem ér rá, azért szállok be a megoldásba.
Vegyük, hogy az első lapon vannak a szűrt adataid, a Munka2 lapon lesz a "népszámlálás", ott is a B1 cellában.Sub MennyiAzAnnyi()
Sheets(2).Range("A:A") = ""
Sheets(1).Range("A:A").Copy Destination:=Sheets(2).Range("A1")
Sheets(2).Range("A2").Select
Range(Selection, Selection.End(xlDown)).Select
ActiveWorkbook.Names.Add Name:="ter", RefersTo:="=Munka2!" & Selection.Address
Range("B1").FormulaArray = "=SUM(1/COUNTIF(ter,ter))"
End Sub -
-
válasz
DopeBob #7986 üzenetére
Hali!
Ebben az esetben az A:A megadása nem célszerű, hisz akkor gondoskodni kell arról, hogy az A oszlop minden cellájában legyen valamilyen érték, ellenkező esetben #ZÉRÓOSZTÓ hibát kapsz. Másrészt meg az Excel 2003-ban 65536 sor a maximum(meg 256 oszlop), de pl 2007-ben ez már lényegesen több(több mint 1 millió sor és 16384 oszlop)
Annyit tehetsz, hogy pl elnevezel tartományokat pl az A2:A10000 NEVEK-nek és akkor a korábbi képlet így módosul
=SZUM(1/DARABTELI(NEVEK;NEVEK))Itt ha beszúrsz vagy törölsz egy sort, akkor az Excel gondoskodik róla, hogy növelje vagy csökkentse az elnevezett tartomány értéktartományát.
Az Autoszűrős dolgot nem teljesen értem, mert az nem befolyásolja a képlet működését...
Fire.
-
válasz
DopeBob #7984 üzenetére
Hali!
Egy általad választott cellába beviszed ezt a képletet tömbképletként (F2->beilleszted az alábbi képleted->CTLR+SHIFT+ENTERT-t ütsz)
=SZUM(1/DARABTELI(A1:A6;A1:A6))
Értelem szerűen az A1:A6 tartományt oda állítod, ahol a nevek vannak.
Fire.
UI: A nevek közt nem lehet üres cella, mindnek kitöltve kell lennie ebben az esetben, ha nem így van akkor #ZÉRÓOSZTÓ hibát kapsz..
Új hozzászólás Aktív témák
Hirdetés
- Honor 400 Pro - gép a képben
- Óvodások homokozója
- sziku69: Fűzzük össze a szavakat :)
- A fociról könnyedén, egy baráti társaságban
- PlayStation 5
- Autós topik
- Samsung Galaxy S20 és S20+ duplateszt
- Kevesebb dolgozó kell az Amazonnak, AI veszi át a rutinfeladatokat
- Radeon RX 9060 XT: Ezt aztán jól meghúzták
- Melyik tápegységet vegyem?
- További aktív témák...
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Számlás!Steam,EA,Epic és egyébb játékok Pc-re vagy XBox!
- Új, bontatlan World of Warcraft gyűjtői kiadások
- Eladó Steam kulcsok kedvező áron!
- ROBUX ÁRON ALUL - VÁSÁROLJ ROBLOX ROBUXOT MÉG MA, ELKÉPESZTŐ KEDVEZMÉNNYEL (Bármilyen platformra)
- Csere-Beszámítás! Olcsó Számítógép PC Játékra! R5 1500X / RX 570 8GB / 16GB DDR4 / 250SSD + 2TB HDD
- BESZÁMÍTÁS! GIGABYTE AORUS MASTER RTX 3070 8GB GDDR6 videokártya garanciával hibátlan működéssel
- MacBook felvásárlás!! MacBook, MacBook Air, MacBook Pro
- ÁRGARANCIA!Épített KomPhone i5 14600KF 32/64GB RAM RX 9070 16GB GAMER PC termékbeszámítással
- BESZÁMÍTÁS! 32GB (2x16) G.Skill Trident Z RGB 6600MHz DDR5 memória garanciával hibátlan működéssel
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged