- Motorola Edge 50 Neo - az egyensúly gyengesége
- Szívós, szép és kitartó az új OnePlus óra
- Honor Magic6 Pro - kör közepén számok
- Csak semmi szimmetria: flegma dizájnnal készül a Nothing Phone (3)
- Mobil flották
- iPhone topik
- Vivo V50 5G - új is, nem is
- Poco X3 Pro - hardverfrissítés
- Telekom mobilszolgáltatások
- Külföldi SIM-ek itthon
-
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
-
Delila_1
veterán
-
Delila_1
veterán
válasz
pitman #11196 üzenetére
Úgy látom, titok, melyik Excelt alkalmazod.
Ha nem akarsz nagy területet feltételesen formázni, lehet egy makrót rendelni a lapodhoz, ami figyeli a bevitt értékeket, és azoknak megfelelően formázza a cellákat.
A makróhoz szükséges tudni, hova akarod bevinni korlátozottan az adatokat, melyek legyenek a megengedett értékek, melyik értékhez milyen formátumot szeretnél megadni, és hogy a bevitt érték celláját, vagy másikat formázzon-e.
-
Delila_1
veterán
válasz
Fire/SOUL/CD #11175 üzenetére
Kész a terasz?
-
Delila_1
veterán
válasz
zoli1962 #11169 üzenetére
Nézz szét itt, és ezen a környéken.
2003-ban a Beszúrás, Név, Név megadása almenüben adhatsz nevet egy területnek, és ugyanott módosíthatod is.
A módosításnál lépj be a Hivatkozás mezőbe, és nyomj F2-t a szerkesztő üzemmódhoz, másképp elrontod a képletedet. Mikor kész, nyomd meg a Hozzáad gombot – módosításkor is. A panel bezárása előtt érdemes a Hivatkozás mező jobb oldalán lévő színes gombot megnyomni, megmutatja a képletnek megfelelő területet. Ha hibáztál, így könnyen észreveszed.
-
-
Delila_1
veterán
Az Árak fülön minden sorban szerepeljen a gép neve. Ha akarod, a másodiktól kezdve a karakter színe legyen olyan, mint a háttér, akkor nem zavar.
Ha csak minden 6. sorban szerepel gépnév, kukkants ide a kitöltéshez.Szúrj be egy oszlopot a gépnév elé. Ennek az oszlopnak a képlete (címsort feltételezve)
=B2&" "&C2
Ezzel a gép nevét és a szolgáltatást összefűzted, közöttük egy szóközzel.Az fkereshez ezt írod be.
=fkeres(A2&" "&B2;Árak!A:A;......;0)Feltételeztem, hogy az Ajánlat lapon az A oszlopban vannak a gépnevek, B-ben a kategóriák.
-
Delila_1
veterán
válasz
bozsozso #11150 üzenetére
Jó azt is tudni, hogy ha a hónapok lapjain azonos cellában van egy adat, amit az összegző lapon akarsz összesíteni, van rá egy egyszerű megoldás.
Pl. minden lap C35 cellájában van egy havi összesítő érték, akkor az összegző lapon az
=szum(Január:December!C35) képlet egy lépésben összegzi ezeket.
Csak arra vigyázz, hogy a Január és December lap közé ne keveredjen be oda nem tartozó lap.A szum helyett lehet átlag, min, max, stb függvény is.
-
Delila_1
veterán
válasz
m.zmrzlina #11135 üzenetére
-
Delila_1
veterán
válasz
m.zmrzlina #11128 üzenetére
A kérdés így szólt:
"ha számot írok H vagy D sorba akkor az A sorba beírja a dátumot (éppen most)"Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Target.Column = 4 Or Target.Column = 8 Then
If IsNumeric(Target) Then Cells(Target.Row, 1) = Now()
End If
Application.EnableEvents = True
End Sub -
Delila_1
veterán
Ha erre gondoltál,
ez a makró állítja elő:
Sub megj()
For Each CV In Range("A2:A11")
név = CV
If Weekday(név, 2) = 1 Then m = Date - 3 Else m = Date - 1
név = Year(m) & "." & Right("0" & Month(m), 2) & "." & Right("0" & Day(m), 2)
On Error Resume Next
CV.AddComment
CV.Comment.Text Text:=név
CV.Select
ActiveCell.Comment.Visible = True
CV.Comment.Shape.Select True
With Selection.ShapeRange
.ScaleWidth 0.48, msoFalse, msoScaleFromTopLeft
.ScaleHeight 0.23, msoFalse, msoScaleFromTopLeft
End With
Next
End Sub -
Delila_1
veterán
válasz
varsam #11109 üzenetére
Azt elmulasztottam megírni, hogy a makrót ahhoz a laphoz kell rendelned, amelyiken elő akarod csalni a képet.
Ennek a módjáról már sokszor volt szó, legutóbb itt. -
Delila_1
veterán
válasz
varsam #11104 üzenetére
Private Sub Worksheet_Change(ByVal Target As Range)
If Target = "" Then Exit Sub
If Target.Address = "$B$2" Then 'ehelyett írd azt a cellát, amibe adatot viszel a kép
'megjelenítéséhez
Dim utvonal As String
Dim FN As String
utvonal = "D:\valami\valami_más\" 'ide írd a saját útvonaladat
FN = "képneve.jpg" 'ide írd a beszúrandó kép nevét kiterjesztéssel
Range("D2").Select 'a D2 bal felső sarkához illeszti a képet, írd át
ActiveSheet.Pictures.Insert(utvonal & FN).Select
End If
End SubHa a B2 cellába írsz valamit, a D2-be beilleszti a képet, aminek az útvonalát és a nevét a kiterjesztéssel együtt megadod a jelölt sorokban.
-
Delila_1
veterán
válasz
cortez25 #11099 üzenetére
Azt hiszem, megértettem, de közel sem biztos.
A RANDBETWEEN(x;y) függvény adja az x és y értékek közötti véletlen egész számokat.
Ezt cellákra hivatkozással is megadhatod: =randbetween($a$1;$b$1), és másolhatod.Ha nem találsz a függvényeid között ilyent, az Eszközök - Bővítménykezelő menüben a két Analyzis kezdetűt jelöld be.
-
Delila_1
veterán
válasz
fokukac #11089 üzenetére
Ez a makró a gyűjtő füzetből indítva a megadott útvonalú könyvtár xls fájljait egyenként behívja, és az A2:D_utolsó_sor tartományukban lévő adatokat egymás alá bemásolja a gyűjtő füzetbe.
Sub Osszevon()
Const utvonal = "D:\valami\" 'Itt írd át az útvonalat
Dim FN As String, WB As Workbook
ChDir utvonal
FN = Dir(utvonal & "*.xls", vbNormal)
Do
If FN <> "." And FN <> ".." Then
Workbooks.Open Filename:=FN
usor = Range("A65536").End(xlUp).Row 'Behívott füzet alsó sora
Range(Cells(2, 1), Cells(usor, 4)).Copy 'A2:Dvalahány tartomány másolása
ActiveWindow.ActivateNext
gy_usor = Range("A65536").End(xlUp).Row + 1 'Gyüjtő füzet alsó sora
Cells(gy_usor, 1).Select
ActiveSheet.Paste 'Beillesztés
ActiveWindow.ActivatePrevious 'Behívott füzet
ActiveWindow.Close 'Bezárás
End If
FN = Dir()
Loop Until FN = ""
End Sub -
Delila_1
veterán
válasz
zsotesz81 #11085 üzenetére
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 7 Or Target.Column = 8 Then
Dim icolor As Integer
If Target = "low" Then icolor = 35
If Target = "medium" Then icolor = 36
If Target = "high" Then icolor = 40
If Target = "" Then icolor = 15
Range(Target.Address).Interior.ColorIndex = icolor
End If
End Sub -
Delila_1
veterán
Itt van az új makró a pontosítások után:
Sub mmm()
Dim talal As Variant, usor As Integer, sor As Integer
Dim adat_1, adat_2Windows("segédtábla.xls").Activate
Sheets(1).Select
usor = ActiveSheet.UsedRange.Rows.CountFor sor = 2 To usor
adat_1 = Cells(sor, 1): adat_2 = Cells(sor, 2)
Windows("főtábla.xls").Activate
Sheets(1).Select
On Error Resume Next
talal = Columns("A:A").Find(adat_1, LookIn:=xlValues).Row
Workbooks("főtábla.xls").Sheets(1).Cells(talal, 1) = adat_2
Windows("segédtábla.xls").Activate
Next
End SubAlt+F11-gyel behívod a VBA szerkesztőt. Bal oldalon a kiválasztod a füzetedet – mindegy, hogy a kettő közül melyiket. A néven jobb klikk, Insert, Module. Jobb oldalon kapsz egy üres felületet, oda másold be a makrót.
Mindkét füzeted legyen nyitva. Az egyikben állva Eszközök, Makró, Makrók – vagy ezek helyett Alt+F8 –, kapsz egy párbeszéd ablakot, ott indítod a hangzatos mmm című makrót. -
Delila_1
veterán
Írtam egy makrót, de több dolog tisztázatlan. Úgy vettem, hogy mindkét füzetben az első lapon vannak az adatok. Nem írtam bele hibakezelést arra az esetre, ha a főtábla.xls-ben nem szerepel a segédtábla.xls valamelyik adata.
Továbbá nem tudom, a főtáblában melyik "a főtábla adott mezője", ahova át kell másolni a segédtábla B oszlopában található értéket. A makró a megtalált adat sorának a B oszlopába írja a segédtábla B mezőjét.
Ha ezeket a dolgokat tisztáztuk, megmondom, mi(ke)t kell átírni a makróban, és egyáltalán hogy kell alkalmazni. Ha nem leszek itt, biztosan kisegít valaki.
Sub Javit()
Dim talal As Variant, usor As Integer, sor As Integer
Dim nev, szam
Windows("segédtábla.xls").Activate
Sheets(1).Select
usor = ActiveSheet.UsedRange.Rows.Count
For sor = 2 To usor
nev = Cells(sor, 1): szam = Cells(sor, 2)
Windows("főtábla.xls").Activate
Sheets(1).Select
talal = Columns("A:A").Find(nev, LookIn:=xlValues).Row
Workbooks("főtábla.xls").Sheets(1).Cells(talal, 2) = szam
Windows("segédtábla.xls").Activate
Next
End Sub -
Delila_1
veterán
válasz
Fehér Mancs #11072 üzenetére
Sokkal egyszerűbb, mint az én megoldásom. Annyit viszont tévesztettél, hogy a végén -2 helyett -1 kell.
zhari magyar Exceljéhez
=OFSZET($A$2;0;OSZLOP()*2-1) -
Delila_1
veterán
-
Delila_1
veterán
válasz
Fire/SOUL/CD #11060 üzenetére
Nem figyelted, hogy az első sor nem a következő oszlopból veszi a 2. sor értékét – csak a B oszlopban –, az oszlopra történő hivatkozás cellánként nő eggyel.
-
Delila_1
veterán
válasz
Fire/SOUL/CD #11048 üzenetére
Csodálkoztam volna, ha egyformán értjük a dolgot.
-
Delila_1
veterán
válasz
Fire/SOUL/CD #11043 üzenetére
Ez csak akkor igaz, ha a további oszlopokban is össze vannak vonva hármasával az oszlopok.
Szerintem a nem nevet tartalmazó sorokat jobbra kellene tolni egy cellával, a nevek oszlopában pedig minden így keletkezett "lyukat" fel kellene tölteni a fölötte lévő értékkel. Akkor lehet rendezni. A két újonnan bevitt név karaktereit a háttér színére állítanám.
A jobbra toláshoz segít a Ctrl és a plusz billentyű.A "lyukak" feltöltéséről volt már itt szó, a Ctrl+g kulcsszóval meg lehet találni.
-
Delila_1
veterán
válasz
b.bone #11005 üzenetére
A tól-ig tartományt így határozhatod meg a feltételes formázásnál:
=AND(E1>=TODAY();E1<=TODAY()+7)
Látod, a zárójelbe nem kell a nulla érték.
Szerk.
Az utolsó példádnál a mai napot, és az ezt követő 7. napot akarod formázni?
Akkor =OR(E1=TODAY();E1=TODAY()+7) a képlet.A feltételes formázásokat az Excel a bevitel sorrendjében hajtja végre. Ha elsőként a felső képletet adtad meg mondjuk sárga háttérrel, ez fog érvényesülni, mert a második képlet szintén a mai, és a +7 napi dátumot tartalmazó cellákat formázná meg. Itt az első parancs az érvényes, nem az utolsó, mint a katonaságnál.
Végrehajtja a többi formázó képletet is, ha nem ugyanazokra a dátumokra vonatkoznak.
-
Delila_1
veterán
Az összesítő lap F oszlopában az INDIREKT(F$1&"!A:G") függvény adja meg az FKERES függvény keresési tartományát, a B1ny lap A:G oszlopát.
Az F1 cellában van a lap neve, ahol keressen.A következő oszlop indirekt függvénye a G1 cellában szereplő lap (B2ny) A:G tartományában keres.
-
Delila_1
veterán
válasz
mr.nagy #10984 üzenetére
Most látom, hogy még délelőtt hozzáírtál.
Az 5. sor a címsor? Ha igen, nem kell módosítanod a kódon, ha az már adatsor, akkor a For kezdetű sorban a 6-ot írd át 5-re.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim usor%, sor%
usor% = Range("A65536").End(xlUp).Row
If Not Intersect(Range("A1"), Target) Is Nothing Then
If Target = "" Then
Rows("5:50000").Hidden = False
Else
For sor% = 6 To usor%
If Cells(sor%, 1) <> Cells(1) Then Rows(sor%).Hidden = True
Next
End If
End If
End SubAz A1 cellába történő beíráskor elrejti azokat a sorokat, amik nem egyenlőek annak a tartalmával. A cella törlésekor minden sort felfed.
Abban az esetben, mikor az oszlopban nem található adatot írsz az A1-be, minden sort elrejt, de ekkor is láthatóvá teheted újra a sorokat az A1 tartalmának a törlésével. -
Delila_1
veterán
válasz
mr.nagy #10982 üzenetére
Igen, megoldható. A laphoz kell rendelned a kódot.
Private Sub Worksheet_Change(ByVal Target As Range)
Range("A5").Select
If Intersect(Range("A1"), Target) = "" Then Exit Sub
If Not Intersect(Range("A1"), Target) Is Nothing Then _
Selection.AutoFilter Field:=1, Criteria1:=Range("A1")
End Sub -
Delila_1
veterán
válasz
medvezsolt #10965 üzenetére
Ezt ennyi információval, hogy "lehet, hogy A2öt ki akarom vonni belőle, A11-et nem", nem lehet leprogramozni.
Mikor már PONTOSAN tudod, mit akarsz összeadni, vagy kivonni, mit milyen formátumban akarsz megjeleníteni, akkor újra tedd fel a kérdést.
-
Delila_1
veterán
válasz
Pityke78 #10971 üzenetére
A kijelölt területnek ezres csoportosítást ad tizedesek nélkül, és nem "írja rá" a cella jobb oldalára, hanem egy L betű szélességgel beljebb teszi a számokat:
Sub Szamformatum()
Selection.NumberFormat = "#,##0_L"
End SubA personalba másold be, majd tegyél ki hozzá a gyorselérési eszköztárra egy ikont.
A personalról már többször volt szó itt a fórumon. -
Delila_1
veterán
válasz
repvez #10947 üzenetére
Tettem ide egy füzetet.
A jelenléti lapokra két megoldás van benne, az "Anna éves" és "Anna é" nevű lapokon (ugyanez Rékával is), nem kívánt törlendő.
Az Összesítő lapon az órák szerepelnek, míg az egyéni jelenléti lapokon minden, ami egy-egy emberhez tartozik a hónapok adatait tartalmazó lapokon.
1 füzetbe tehetsz mindent. 12 hónap, 7 ember 1-1 lapja, plusz egy összesítő nem túl sok lap egy füzetben.
-
Delila_1
veterán
válasz
Fire/SOUL/CD #10944 üzenetére
Annál is írja a négyszöget, ha van, ha nincs engedélyezve a sortörés.
-
Delila_1
veterán
válasz
m.zmrzlina #10935 üzenetére
Hivatkozhatsz cellára is. Próba - cseresznye.
Bocs, nem tudom most kipróbálni, szörnyű rabszolgamunkám van. -
Delila_1
veterán
válasz
m.zmrzlina #10933 üzenetére
"=ÉRTÉK(BAL(indirekt("B" & 27;8))>=$F$24" legyen a feltétel
-
Delila_1
veterán
válasz
m.zmrzlina #10924 üzenetére
Próbálj meg egy indirektet adni a $B27-hez.
-
Delila_1
veterán
Egy érdekesség ehhez a SORSZÁM függvényhez:
Egyforma értékek (dátumok) esetén azonos sorszámot ad – eddig rendben van – és nem ad következő sorszámot annyiszor, ahány egyforma értéket talál.
Kicsit érthetőbben: ha háromszor szerepel egy dátum, ami az 5. a sorrendben, nem lesz 6-7. helyezés, a következő a 8. lesz.
-
Delila_1
veterán
válasz
cousin333 #10920 üzenetére
Az eredeti kérdésben nem szerepelt, hogy a képletet tartalmazó oszlop sorrendet is tartalmazzon.
Van beépített függvény erre is, a SORSZÁM, aminek ha az utolsó paramétere nulla, vagy lemarad, csökkenő lesz a számozás, bármilyen más értéknél emelkedő.
=HA(A1=0;"";SORSZÁM(A1;$A$1:$A$10;1))
Szerk.: a DARABÜRES él a 2003-as verzióban.
-
Delila_1
veterán
válasz
copperhead #10901 üzenetére
Nincs mit.
-
Delila_1
veterán
válasz
copperhead #10893 üzenetére
-
Delila_1
veterán
válasz
Baboka #10883 üzenetére
Az EO-t tedd idézőjelek közé, ha ez az oszlop betűjele. Ha nem, akkor egész számnak kell lennie.
Az mo1-nek, mo2-nek, és mo3-nak is egész szám értéket kell képviselnie.Az említett hibajelenség még akkor szokott előfordulni, ha a Bővítménykezelőben nincs bekapcsolva az Analyzis ToolPak - VBA. A nem VBA-sat is kapcsold be, az a munkafüzetekhez ad egy halom új, jól használható függvényt.
-
Delila_1
veterán
válasz
csela1 #10865 üzenetére
Nem kell ehhez makró. A B1 (vagy másik oszlop első cellája) képlete:
=HA(SZÁM(A1);1;"szöveg")
a második sor képlete: =HA(SZÁM(A2);MAX(B$1:B1)+1;"szöveg")Ez utóbbi végig másolható.
Ha a szöveget akarod látni a képleteket tartalmazó oszlopban, akkor a "szöveg" helyett legyen A1, ill. a második sorban A2.
-
Delila_1
veterán
válasz
dellfanboy #10855 üzenetére
Sub mm()
Range("A1") = 100: Range("B1") = 50: Range("C1") = Range("A1") / Range("B1")
Range("C1").Copy
Range("F1:F50").Select
Selection.PasteSpecial Paste:=xlPasteValues
End Sub -
Delila_1
veterán
válasz
Lompos48 #10851 üzenetére
Alapjában véve egyetlen sor a makró
Növelésre:
Sub Nov()
Selection = Selection + 10
End SubCsökkentésre:
Sub Csokk()
Selection = Selection - 10
End SubLehet aztán cifrázni, pl. ne az éppen aktuális cella értékét módosítsa, hanem kérje be a cella címét, és a változtatás mértékét.
Új hozzászólás Aktív témák
Hirdetés
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- Gyermek PC játékok
- Sea of Thieves Premium Edition és Egyéb Játékkulcsok.
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Adobe Előfizetések - Adobe Creative Cloud All Apps - 12 Hónap - NYÁRI AKCIÓ!
- IKEA (HAVREHOJ) tablet vagy laptop tartó
- Telefon felvásárlás!! Honor 90 Lite/Honor 90/Honor Magic5 Lite/Honor Magic6 Lite/Honor Magic5 Pro
- Xiaomi 15 Ultra 512GB, Kártyafüggetlen, 1 Év Garanciával
- ÁRGARANCIA! Épített KomPhone Ryzen 7 9800X3D 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Bomba ár! Lenovo ThinkPad L480 - i5-8GEN I 8-16GB I 256GB SSD I 14" FHD I HDMI I Cam I W11 I Gari!
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged