- Út Korea turistaparadicsomába, amiről talán még sosem hallottál: Csedzsu-sziget
- Perplexity Pro AI képszerkesztési limit -egy képgenerátor függő tapasztalatai
- Adattár lemez előkészítése távlati Windows telepítéshez
- Jelszóvédett IBM Thinkpad R50e működőképessé tétele.
- ATK Blazing Sky X1 Ultimate Metallic Red gamer egér
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- Gurulunk, WAZE?!
- sellerbuyer: Milyen laptopot vegyek? Segítek: semmilyet!
- eBay-es kütyük kis pénzért
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- gban: Ingyen kellene, de tegnapra
- gerner1
- GoodSpeed: Perplexity Pro AI képszerkesztési limit -egy képgenerátor függő tapasztalatai
-
LOGOUT
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
-
karlkani
aktív tag
válasz
csongi #53789 üzenetére
Módosítsd azokat a részeket, melyeket nyomtatott nagybetűkkel írtam.
Sub csv()
Dim strFullName As String
Application.DisplayAlerts = False
strFullName = "FÁJLNÉV TELJES ELÉRÉSI ÚTTAL" ' pl.: "C:\teszt.csv"
ThisWorkbook.Sheets("MUNKALAP NEVE").Copy ' pl.: "Munka1"
ActiveWorkbook.SaveAs Filename:=strFullName, FileFormat:=xlCSV, CreateBackup:=True
ActiveWorkbook.Close
Application.DisplayAlerts = True
End Sub -
Fferi50
Topikgazda
válasz
csongi #53789 üzenetére
Szia!
Beállítások - Mentés fület nézd meg. Ott kiválaszthatod az alap mentési formátumot.
DE akkor minden mentésed ebben a formában lesz végrehajtva.
Ha ezt nem szeretnéd, akkor makró - felveszed a mentés másként indított makrót és utána ezt tudod egy gombhoz rendelni.
Hogyan gondolod a CSV-be nyomtatást?
Üdv. -
-
Fferi50
Topikgazda
válasz
csongi #37506 üzenetére
Szia!
Mitől fehér és mitől kék? Vagyis mi okozza a cella színeváltozását? Ha feltételes formázás, akkor talán az értékhez kötve megvalósítható a munkalap Change eseményében.
Ha csak "úgy", a felhasználó színezi, akkor automatikusan nem fog menni, max. gombnyomásra.
De mindkét esetben makró kell hozzá.Üdv.
-
Fferi50
Topikgazda
válasz
csongi #34291 üzenetére
Szia!
Index és hol.van függvény páros a barátod:
A2 cella képlete =INDEX(R:R;HOL.VAN($B8;$T:$T;0))
J2 cella képlete =INDEX(AA:AA;HOL.VAN($B8;$T:$T;0))Az egész oszlopok helyett írhatod azt a tartományt, ameddig az adataid vannak, lényeg, hogy mindig azonos sorban kezdődjön és végződjön az index és a hol.van tartománya is (pl.R2:R10 és T2:T10).
A többit szerintem ki tudod találni.
Üdv.
-
ny.janos
tag
válasz
csongi #30803 üzenetére
B2 képlete, ha A2-ben van az első telefonszámod:
=BAL(A2;4)&" "&KÖZÉP(A2;5;2)&"-"&KÖZÉP(A2;7;2)&"-"&KÖZÉP(A2;9;2)&"/"&KÖZÉP(A2;11;3)&"-"&HA(HOSSZ(A2)=17;JOBB(A2;4);JOBB(A2;3))Egyébiránt elegánsabb lenne cellaformázással csinálni, de abban a képlet ha részét nem sikerült megoldanom (máshol kell tördelni, ha budapesti, vagy mobilszámról van szó /7 számjegy/ illetve, ha vidéki számról /6 számjegy/).
-
ny.janos
tag
válasz
csongi #30754 üzenetére
A 365,25-ös értéken én is gondolkodtam, de nem vezet az sem sokkal jobb eredményre, a hiba értelemszerűen ott is megmarad a szökőévek szabályából eredően. Illetve az is probléma, ha épp a kezdődátumod évét megelőző év volt szökőév, mert akkor a lefelé kerekítés is hibára vezet.
Pl. ha a te képletedben J4 értéke 2011.02.25-e, akkor az eredményed 4. Ami nyilvánvalóan hibás, hiszen azóta 5 év telt el.
A tökéletes megoldás azonban olyan bonyolult lehet, ami nem éri meg a befektetett energiát (vagy csak nekem nem ugrik be, hogy mit kellene használni).
-
ny.janos
tag
válasz
csongi #30321 üzenetére
K2 cella képlete:
=HA(J16>76;5;HA(J16>=65;10;HA(J16>=40;15;HA(J16>=18;20;0))))A képletben beállított tartományok (ha valamit rosszul értettem, akkor módosíts rajta):
Office 2010-ben csináltam, de a HA függvénynek működnie kell a korábbiban is. Libre ofice működésről nincs információm.
-
ny.janos
tag
-
Fferi50
Topikgazda
válasz
csongi #28010 üzenetére
Szia!
Üres sorok elrejtésére szerintem megfelel az adatok - szűrés menüpont, ott kiválasztod a nem üres lehetőséget valamelyik oszlopban és máris elrejti az üres sorokat.
A fájlt mentheted úgy, hogy csak jelszóval lehessen megnyitni "felülmentésre". A mentés máskéntnél van olyan lehetőség, hogy eszközök - beállítások - jelszó betekintéshez - jelszó módosításhoz.
Ha a módosításhoz adsz jelszót, akkor a jelszó nélkül csak olvasásra lehet megnyitni a munkafüzetet, ezért nem lehet felülírni - csak másként menteni. Ha ott nem adsz meg jelszót, akkor a továbbiakban nem fog kérni.
Üdv.
-
azopi74
addikt
-
azopi74
addikt
válasz
csongi #27879 üzenetére
"Remélem érthetően sikerült leírnom."
Nem igazán
"A1 cella értéke 755 akkor d1 cella értéke 1, ha A1 1201 akkor a d1 cella értéke 0."
Ez az a rész, amit nem teljesen értek, de lehet, hogy bennem van a hiba....
Leírnád, hogy mit szeretnél pontosan? Ha pontosan intervallumhatáron van a szám, akkor legyen 0, különben 1?"Ha a három feltétel közül valamelyik nem teljesül akkor a D1 legyen 0."
Ezt sem teljesen értem. A három feltétel közül az egyik biztosan nem fog teljesülni, hiszen a B1 nem lehet egyszerre "Bkny" és "Bkny Kfny", vagyis a D1 mindenképpen 0 lesz így
Vagy melyik három feltételre gondolsz?
-
Mutt
senior tag
válasz
csongi #27684 üzenetére
Hello,
...egy adott cellába, legyen egy képlet, de ha kézzel beleírok akkor a beírt érték legyen, viszont ne vesszen el a képlet sem....
Van egy kevésbé használt függvény az S (angolul N), ami ha szöveget kap értéknek, akkor nem számol vele.
pl. =N("komment") értéke 0 és ezek után =2+N("komment") cella értéke is 2 lesz.Ez a függvény jön itt nekünk segítségre, mivel a cella képletét ebbe a függvénybe elrejtjük.
A lenti makróval első lépésként megjegyezzük a cella tartalmát és képletét ha van a Worksheet_SelectionChange eseménnyel. Az egyszerűség kedvéért csak akkor tesszük, ha egyszerre 1 cella van módosítva.
A második lépésben ha a változik vmi a lapon, akkor a Worksheet_Change esemény lép akcióba és attól függően, hogy volt-e képlet vagy sem, esetleg töröltük a cella bedobja ami kell éppen.
A kód nem tökéletes, iránymutatásnak szántam.
Option Explicit
Dim KepletVanBenne As Boolean
Dim Tartalom As String
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
KepletVanBenne = False
Tartalom = ""
If Target.Cells.Count = 1 Then 'egyszerűség kedvéért csak 1 cellára dolgozunk
KepletVanBenne = Target.HasFormula 'megnézzük hogy van-e képlet a cellában
If KepletVanBenne Then Tartalom = Target.FormulaLocal 'elmentjük a képletet egy változóba
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Dim EredetiKeplet
Dim Keresni As String
'Excel nyelvének megállapítása
If Application.LanguageSettings.LanguageID(msoLanguageIDUI) = 1038 Then
Keresni = "+S("
Else
Keresni = "+N("
End If
If Target.Cells.Count = 1 Then 'egyszerűség kedvéért csak 1 cellára dolgozunk
'ha az új cella konstans akkor mögétesszük a képletet, ha volt korábban
If Not Target.HasFormula Then
'megnézzük hogy a korábban volt-e képlet a cellában, ha igen akkor kinyerjük az eredeti képletet onnan
EredetiKeplet = Split(Tartalom, Keresni) 'bízunk benne, hogy nincs a cellában +N( kifejezés más indok miatt
If IsArray(EredetiKeplet) And UBound(EredetiKeplet) > 0 Then
'itt kicsit formázni kell mivel vmi ilyet kapunk vissza "=A1"), de nekünk csak =A1 kell
Tartalom = Mid(EredetiKeplet(1), 2, Len(EredetiKeplet(1)) - 3)
End If
'ha törlik a cella tartalmát, akkor berakuk az eredeti képletet
If Target.Value = "" Then
Target.FormulaLocal = Tartalom
Else
Target.Formula = "=" & Target.Value & "+N(""" & Tartalom & """)" 'az új cellatartalom az lesz, hogy bevitt érték + korábbi formula
End If
End If
End If
End Subüdv.
-
azopi74
addikt
válasz
csongi #27684 üzenetére
Egy cella egyszerre csak értéket tud tárolni, de persze vba-val minden megoldható. De előtte tisztázzuk: a munkalap minden cellájára alkalmazni szeretnéd, vagy csak adott tartományra? És ennek mi értelme is van pontosan? Csak mert lehet, hogy van más, ésszerűbb megoldás is, pl tábla használat, vagy képletek backupolása egy másik munkalapra, csak attól függ, mi a cél pontosan.
-
Delila_1
veterán
válasz
csongi #22493 üzenetére
Azért nem jön össze, mert elfelejtettem megírni, hogy a makró bevitele után makróbarátként (xlsm kiterjesztéssel) kell elmenteni a fájlt.
Tettem egy gombot a Munka2 lapra, ami indítja a makrót. Mikor változnak ezen a lapon az adataid, csak a gombra kell klikkelned.
Szerk.: közben megoldottad.
-
Delila_1
veterán
válasz
csongi #22457 üzenetére
Nem kell semmit rágnod
Alt+F8-ra bejön egy ablak, amiben kiválasztod, és indítod a cikksz nevű makrót.
Persze ehhez be kell másolnod. Alt+F11-gyel bejutsz a VB szerkesztőbe. Bal oldalon kiválasztod a füzetedet.
Insert | Module. Jobb oldalon a kapott nagy fehér területre bemásolod a makrót. Vissza a füzetbe, mentés.
Ezt a műveletet 1× kell elvégezni. -
Delila_1
veterán
válasz
csongi #22448 üzenetére
Csúnya, olvashatatlan lett a makró külalakja a tabulátor helytelen használata miatt, elnézést. Inkább újra beírom.
Sub cikksz()
Dim sor As Long, sor1 As Long, sor2 As Long, lel
Application.ScreenUpdating = False
sor = 1: sor2 = 1
Do While Cells(sor, "A") <> ""
If Application.CountIf(Columns(4), Cells(sor, "B")) > 0 Then
Set lel = Columns(4).Find(Cells(sor, "B"), LookIn:=xlValues)
sor1 = lel.Row
Cells(sor2, "I") = Cells(sor, "A")
Cells(sor2, "K") = Cells(sor, "B")
Cells(sor2, "M") = Cells(sor, "C")
Cells(sor2, "J") = Cells(sor1, "F")
Cells(sor2, "L") = Cells(sor1, "E")
sor2 = sor2 + 1
End If
sor = sor + 1
Loop
Application.ScreenUpdating = True
End Sub -
Delila_1
veterán
válasz
csongi #22448 üzenetére
Makró a 2. táblázat létrehozásához:
Sub cikksz()
Dim sor As Long, sor1 As Long, sor2 As Long, lel
Application.ScreenUpdating = False
sor = 1: sor2 = 1
Do While Cells(sor, "A") <> ""
If Application.CountIf(Columns(4), Cells(sor, "B")) > 0 Then
Set lel = Columns(4).Find(Cells(sor, "B"), LookIn:=xlValues)
sor1 = lel.Row
If Not IsError(sor1) Then
Cells(sor2, "I") = Cells(sor, "A")
Cells(sor2, "K") = Cells(sor, "B")
Cells(sor2, "M") = Cells(sor, "C")
Cells(sor2, "J") = Cells(sor1, "F")
Cells(sor2, "L") = Cells(sor1, "E")
sor2 = sor2 + 1
End If
End If
sor = sor + 1
Loop
Application.ScreenUpdating = True
End Sub -
alfa20
senior tag
válasz
csongi #21590 üzenetére
Szia,
nem emlékszem mennyi színt használtál, de teszem fel ha hármat
pl: zöld, kék, piros
akkor D2 legyen
=HA(B1="zöld";K5;HA(B1="kék";K6;HA(B1="piros";K7;"")))ha négy színt használsz, pl: zöld, kék, piros, fehér:
akkor D2 legyen
=HA(B1="zöld";K5;HA(B1="kék";K6;HA(B1="piros";K7;HA(B1="fehér";K8;""))))és így tovább...
-
alfa20
senior tag
válasz
csongi #21010 üzenetére
esetleg:
A2: "igen/nem"
B2: "=HA(A2="igen";D5;D6)"így mindig "D6" cella értéke lesz amíg B2 nem lesz "igaz"
de ha azt szeretnéd, hogy üres legyen választás előtt:
B2: "=HA(A2="igen";D5;HA(A2="nem";D6;"")"
így viszont ha törlőd az A2 értékét egy üres cellát kapsz B2-benmíg én ezt megírtam addig Delila_1 belőzőtt
Új hozzászólás Aktív témák
Hirdetés
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Router gondok
- iPhone topik
- ASUS routerek
- Merész dizájn és új teleobjektív az iPhone 17 Pro mobilokban
- iOS alkalmazások
- Elektromos autók - motorok
- Call of Duty: Warzone
- Sokat megélt veterán CPU-t hoz vissza a piacra az Intel
- Kodi és kiegészítői magyar nyelvű online tartalmakhoz (Linux, Windows)
- További aktív témák...
- GYÖNYÖRŰ iPhone 13 Pro 128GB Graphite -1 ÉV GARANCIA - Kártyafüggetlen, MS3083
- ÁRGARANCIA!Épített KomPhone i9 14900KF 32/64GB DDR5 RAM RX 9070 XT 16GB GAMER PC termékbeszámítással
- HIBÁTLAN iPhone 13 mini 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3330
- BESZÁMÍTÁS! Nintendo Switch OLED 64GB fehér játékkonzol garanciával hibátlan működéssel
- Részletre elviheted akár 365 napra Bankmentes , azonnal elérhető ASUS ROG Strix G18 32GB/2TB
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest