Hirdetés
- D@reeo: Pi-hole és a Telekom Sagemcom F@st 5670 DNS beállítása
- Luck Dragon: Asszociációs játék. :)
- GoodSpeed: Márkaváltás sok-sok év után
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- bb0t: Ikea PAX gardrób és a pokol logisztikája
- Viber: ingyen telefonálás a mobilodon
- sziku69: Szólánc.
- Gurulunk, WAZE?!
- MaxxDamage: (TongFang) Medion Erazer Beast 16 X1 benchmark
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
-
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
-
cortez25
senior tag
válasz
m.zmrzlina
#10722
üzenetére
Igen, nálam ugyanis a nevek több oszlopban helyezkednek el.
PL: Dóra,Ica,Lola,Irma G oszlopban van, a többi a H oszlopban. Akkor mivel keresek,vagy hogyan,hogy a F,G,H oszlopban is egyszerre keressen.
-
cortez25
senior tag
válasz
m.zmrzlina
#10720
üzenetére
Ha az általad feltett táblában, a G és a H oszlopban is vannak nevek.
-
cortez25
senior tag
válasz
m.zmrzlina
#10717
üzenetére
Ha a G és a H oszlopban is vannak nevek?
-
cortez25
senior tag
válasz
m.zmrzlina
#10713
üzenetére
Még egy kérdésem lenne, két táblát szeretnék összehasonlítani, mindegyikben nevek vannak, van egy listám ABC sorrendben, ezeket a neveket kellene megkeresnem egy olyan táblában ahol ők teljesen szétszórtan vannak, illetve lehet,hogy bent sincsenek, válasznak egy "OK" vagy "NOK" kellene az ABC sorrendesek mellé.
Üdv: Cortez
-
cortez25
senior tag
válasz
m.zmrzlina
#10711
üzenetére
köszi!
-
sz.j
nagyúr
válasz
m.zmrzlina
#10671
üzenetére
Közben én is próbálkoztam ...., lehet, hogy nem "szakszerű a menet" de az alábbiak szerint sikerült.
Sor(ok) kijelölése --- jobb klikk a sorra --- Másolás --- újabb jobb klikk a kijelölt sorra --- Irányított beillesztés --- OK
Annak ellenére, hogy sikerült, nekem úgy rémlik, hogy hajdanán sokkal egyszerűbb megoldással lehetett ezt megcsinálni .....
Amúgy még egyszer köszi a segítséget!

-
sz.j
nagyúr
válasz
m.zmrzlina
#10662
üzenetére
Bocs, ez lemaradt:
"Arra azért figyelj, hogy jónéhány Excel függvény nem működik OO-ban."
Ezzel az OOo-val jó régen már csináltam ilyen beszúrást és akkor sikerült a képleteket is tartalmazó új sorok beszúrása ...., csak sajna elfelejtettem hogyan kell csinálni ....

-
sz.j
nagyúr
válasz
m.zmrzlina
#10662
üzenetére
-
VANESSZA1
őstag
válasz
m.zmrzlina
#10649
üzenetére
Huuúú Szuper !
Thank you !

-
perfag
aktív tag
válasz
m.zmrzlina
#10640
üzenetére
Tehát 5 munkafüzet van ugyan, de laponként akár több száz alkatrész is lehet. Hurrá, végre felfogtam.

Szűréssel sem lehetne kihagyni a makrókat? Nem mintha nem tudnám megcsinálni, de ahhoz tényleg kellene látni a munkafüzetet. Vagy alaposan leírni mi hol van. -
Pityke78
őstag
válasz
m.zmrzlina
#10626
üzenetére
Köszi.
Megpróbáltam, de hiába állítom át .-ra, úgy se működik, lapaból dátumként hozza be.
-
varsam
őstag
válasz
m.zmrzlina
#10624
üzenetére
köszi szépen
-
válasz
m.zmrzlina
#10609
üzenetére
2 okból sem működhet
1. mert ránézésre nem működhet...
![;]](//cdn.rios.hu/dl/s/v1.gif)
2. ha még működne is, egy jelszóval védett munkafüzetbe, hogyan illesztesz be makrókódot?
Az előadó tanárbácsit el kell küldeni tanfolyamra...

-
ArchElf
addikt
válasz
m.zmrzlina
#10586
üzenetére
WTF???

Ez működik is?AE
-
medvezsolt
senior tag
válasz
m.zmrzlina
#10586
üzenetére
Köszönöm
-
Delila_1
veterán
válasz
m.zmrzlina
#10602
üzenetére
Neked is!

-
Delila_1
veterán
válasz
m.zmrzlina
#10600
üzenetére
Nem pontos a meghatározásod.
"Erre a te színlekérdezős makród is azt válaszolja (akármilyen színe van a háttérnek) hogy átlátszó." Arra ír átlátszót, ami a feltételes formázás előtt átlátszó.
Biztosan le lehet külön-külön kérdezni RGB szerint, mármint az alapszínt, de már nagyon péntek este van ahhoz.
-
Delila_1
veterán
válasz
m.zmrzlina
#10598
üzenetére
Ja, hogy előállítottál egy színátmenetes formázást, és abból szeretnéd megtudni egy közbenső szín paramétereit?
-
Delila_1
veterán
válasz
m.zmrzlina
#10596
üzenetére
Nem az üreset, hanem a feltételes formázás nélkülit. Ha alapállásban sárga a háttér, annak a kódját adja meg.
Állíts egy cellát alapban arra a színre, amit majd a feltétellel akarsz létrehozni, és ezt kérdezd le.Nekem a personal.xls-ben van egy kis makróm erre a célra, mert időnként le akarok kérdezni 1-1 színt. Kitettem hozzá egy ikont.
Sub Szín_lekérdezés()
If Selection.Font.ColorIndex = -4105 Then
MsgBox "A karakter színkódja: " & " fekete (automatikus, -4105)"
Else
MsgBox "A karakter színkódja: " & Selection.Font.ColorIndex & " "
End If
If Selection.Interior.ColorIndex = xlNone Then '-4142
MsgBox "A cella hátterének színkódja: " & " átlátszó, -4142"
Else
MsgBox "A cella hátterének színkódja: " & Selection.Interior.ColorIndex & " "
End If
End Sub -
Delila_1
veterán
válasz
m.zmrzlina
#10591
üzenetére
A formátumfestő ecsettel simán másolható a formátum.
-
Pá
addikt
válasz
m.zmrzlina
#10588
üzenetére
Nem a szín kevergetés az elsődleges probléma (bár kétségtelenül eléggé demotiváló
)Az a baj, hogy nem tudok megadni tartományokat. Egy form-ot szeretnék csinálni, amibe mindig becopyzok egy oszlopnyi adatot és mindig az aktuális adatok határozzák meg a tartományt. Szóval az oszlop legkisebb tagjától tartana a legnagyobbig mindig a tartomány, de ez nyilván dinamikusan változik, attól függően, hogy épp mit másolok bele.
Szóval nem tudok megadni abszolút sarokköveket, mindig az aktuális adatokat kéne egymáshoz relatíven színezni. Ezért lenne jó az excelbe beípített cellaszínező, azt leszámítva, hoyg jobb lenne ha a betűket színezné.
-
gigi183
csendes tag
válasz
m.zmrzlina
#10548
üzenetére
Bocsi a késői reagálásért
Szépen működik köszönöm szépen! 
-
m.zmrzlina
senior tag
válasz
m.zmrzlina
#10547
üzenetére
Bocsánat, most látom, hogy ez a kód feltölti az üres cellákat az aktív cella értékével. (amit nem szeretnénk). Ennek kiküszöbölésére tedd be a következő sort az oszlop változó értékadás után a külső FOR ciklus elé:
Cells(Selection.Row, Selection.Column).Select
Ez ugyan megszünteti a a kijelölést de itt már nem baj mert a tartomány mérete ekkor már benne van a változóban.
-
válasz
m.zmrzlina
#10544
üzenetére
sorok_szama = Selection.Rows.Count
oszlopok_szama = Selection.Columns.CountEgy névvel ellátot tartományból pedig így
sorok_szama = Range("tartomany_neve").Rows.Count
oszlopok_szama = Range("tartomany_neve").Columns.Count -
gigi183
csendes tag
válasz
m.zmrzlina
#10537
üzenetére
Nahát kedves m.zmrzlina (szeretem a fagyit
) teljesen lenyűgöztél. Itthon tökéletesen működik, remélem benn is fog
Köszönöm szépen!!Abban esetleg tudsz segíteni, hogy ha van egy táblázatom, mint amit először küldtem, hogy tele van cellaösszevonásokkal, de üres cellákkal is, hogy ha átmásolom egy másik fülre, akkor egyből megoldható legyen, hogy az összevont cellák helyett ezekben egyesével jelenjen meg az összevont felirat.
Pl A2:A5-ban van egy név, de szeretném, ha nekem mind a négy cellába kiírja ugyanazt. Láttam már erre megoldást visszaolvasgatva, csak az azért nem jó nekem, mert előfordulnak eredetileg üres cellák, és azt nem szeretném a legelső felette lévő értékkel kitölteni, hanem azok jók üresen. Persze lehet, hogy ezt már kérdezték és elsiklottam felette...
-
Delila_1
veterán
válasz
m.zmrzlina
#10516
üzenetére
Azonos területről azonos területre másoltam az adatokat a két makróval, közben nem változtattam semmi mást.
Nem is számít, hiszen Nálad jól működik, nekem meg nem kell, és ha kellene, az átírt makróval nálam is jól megy.

-
Delila_1
veterán
válasz
m.zmrzlina
#10514
üzenetére
Ez jó kérdés!

-
Delila_1
veterán
válasz
m.zmrzlina
#10512
üzenetére
Igen, ott 2-t kellett volna levonni.
Valamiért ez mégis tudja a 2,9-et.
-
Delila_1
veterán
válasz
m.zmrzlina
#10501
üzenetére
Nálam egész számokat adott a 2.9, vagy a 0.2 helyett.
Nem tudom már, mi volt a makróink között a különbség, ide rajzolom az enyémet.
A value legtöbb helyen alapérték, nem kell kiírni, anélkül is 50 cm a változó meghatározása.
Sub kiemel()
Dim cella As Range, kiemeles As String
For Each cella In Selection.Cells
kiemeles = WorksheetFunction.Substitute(Mid(cella, WorksheetFunction.Search("(", cella) + 1, _
WorksheetFunction.Search("%", cella) - WorksheetFunction.Search("(", cella) - 1), ".", ",")
Worksheets("Munka2").Cells(cella.Row - 10, cella.Column) = kiemeles * 1
Next
End Sub -
Delila_1
veterán
válasz
m.zmrzlina
#10485
üzenetére
Kell a ciklus? Ha a teljes tartományt akarod másolni feltételek nélkül, akkor elég ez is a Munka2 lapon állva:
range("a1:d100").copy sheets("Munka3").range("a10")
-
m.zmrzlina
senior tag
válasz
m.zmrzlina
#10485
üzenetére
Megoldódott.
-
Delila_1
veterán
válasz
m.zmrzlina
#10480
üzenetére
Ez jó hír.

-
Delila_1
veterán
válasz
m.zmrzlina
#10476
üzenetére
A ws.Range("B1").End(xlDown).Row annak a műveletnek a VB-s leírása, mikor a B1 cellán állva Ctrl+le nyilat nyomsz. Ha üres a B oszlop, vagy csak a B1-ben van érték, a fókuszod ilyenkor az alsó, 1048576. sorodra áll.
Mivel az usor% változó értékét
usor% = ws.Range("B1").End(xlDown).Row + 1 -ként adtuk meg, ez a 1048577. sort adja meg a változónak, ami eggyel több, mint amit az Excel lelke kibír. Ezért jelez joggal túlcsordulást. -
Delila_1
veterán
válasz
m.zmrzlina
#10476
üzenetére
Ha a helyfoglalásnál % jelet teszel a változó után, akkor integer (egész) típusú értékeket vár értékként. Ilyenkor a Dim változó után nem kell (nem is engedi) az As Integer meghatározást.
A dim v$ string (szöveges)-, a v# double (lebegőpontos)-, a v! single (lebegőpontos, más tartománnyal)-, a v& long (egész, más tartománnyal, mint az integer)-, a v@ currency (fixpontos) értéket fogad. A napokban jöttem rá véletlenül, hogy elég a dimenzionálásnál megadni a %, $, stb. jeleket, a makró további részében már el lehet hagyni, de szerintem jobb később is kiírni a könnyebb követhetőség érdekében.
A túlcsordulást megelőzheted az
usor%=range("H1048576").end(xlup).row+1 formával.Ne hidd, hogy csak Te szenvedsz a makrók megírása közben.
-
Delila_1
veterán
válasz
m.zmrzlina
#10442
üzenetére
OK. Várom a beszámolót.
-
Delila_1
veterán
válasz
m.zmrzlina
#10438
üzenetére
Lehet, hogy hibával léptél ki valamelyik makróból, ezért nem érvényesült az
Application.EnableEvents = True sor, letiltva maradt a makrók futtatása.Ctrl+g-vel bejön az Immediate ablak, oda írd be a fenti sort, és enterezd le.
-
Delila_1
veterán
válasz
m.zmrzlina
#10421
üzenetére
Private Sub Worksheet_Change(ByVal Target As Range)
'A B.xls füzetből indulunk. A munkalaphoz rendelt eseménykezelő
'csak a saját munkalapján tud dolgozni, ezért innen indítunk
'olyan makrókat, amik nincsenek munkalaphoz rendelve.
Application.EnableEvents = False 'Eseménykezelés letiltása
Dim utvonal, Érték, sor%
sor% = Target.Row 'Adatbevitel sora
utvonal = Cells(sor%, 1) 'Az A oszlopba bevitt érték
If Target.Column = 1 Then 'Ha az A oszlopba vittél be adatot,
Darabteli utvonal, sor% 'meghívom a Darabteli makrót, átadva a 2 változót
End If
If Target.Column = 2 Then 'Ha a B oszlopba írsz értéket,
Érték = Cells(sor%, 2) 'az Érték változó vegye fel a bevitt értéket
Beír Érték 'Beír makró meghívása, az Érték változó átadásával
End If
Application.EnableEvents = True 'Eseménykezelés engedélyezése
End SubSub Darabteli(utvonal, sor%)
'Ez a makró az átvett "utvonal" változót keresi az A.xls Munka1 lapján, a B oszlopban,
'a COUNTIF (darabteli) függvénnyel. A B.xls A oszlopába történt beírás hívja meg a makrót.
Dim ws As Object, usor%
Set ws = Workbooks("A.xls").Sheets("Munka1") 'A ws változó tartalma innen kezdve az egyenlőség jobb oldala
usor% = ws.Range("B1").End(xlDown).Row + 1 'Első üres sor a ws.B oszlopában
If Application.WorksheetFunction.CountIf(ws.Range("B:B"), utvonal) = 0 Then
'Ha a B.xls A oszlopába beírt "utvonal" nem található az A.xls B oszlopában,
'vagyis a darabteli=0
ws.Cells(usor%, 2) = utvonal 'az utvonal változót írja be az ws.B oszlop első üres sorába
Else
'ha van "utvonal" a ws.B oszlopában, keresse meg, és a hozzá tartó H oszlopban lévő értéket
'írja be a kiinduló füzet (B.xls) B oszlopába.
'Itt nem kell a B.xls-re hivatkozni, mert nem léptünk át Select-tel az A.xls-be, csak leskelődtünk.
Cells(sor%, 2) = Application.WorksheetFunction.VLookup(utvonal, ws.Columns("B:H"), 7, 0)
End If
End SubSub Beír(Érték)
'A B.xls B oszlopába történt beírás hívja meg ezt a makrót.
'Akkor írsz értéket a B oszlopba, ha az fkeres nem talált A oszlopbeli útvonalat.
Dim ws As Object, usor%
Set ws = Workbooks("A.xls").Sheets("Munka1") 'Mint fent
usor% = ws.Range("H1").End(xlDown).Row + 1 'Mint fent
ws.Cells(usor%, 8) = Érték 'A ws.H oszlop első üres sorába beírja az értéket
End SubAz eseménykezelés letiltása azért kell a laphoz rendelt makróba, mert a munkalapon történt minden változásra beindul. Próbáld ki az Application.EnableEvents = False sor nélkül lépésenként futtatni, és meglátod, hányszor fut le feleslegesen. A lépésenként futtatáshoz tegyél a makró elejére egy stop-ot, majd írj a B.xls-be egy útvonalat, vagy km-t.
Az end sub előtt vissza kell állítani True értékkel! -
Delila_1
veterán
válasz
m.zmrzlina
#10418
üzenetére
A júzer által használt füzetbe, a munkalaphoz:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Dim utvonal, Érték, sor%
utvonal = Cells(Target.Row, 1)
Érték = Cells(Target.Row, 2)
sor% = Target.Row
If Target.Column = 1 Then
Darabteli utvonal, sor%
End If
If Target.Column = 2 Then
Beír Érték
End If
Application.EnableEvents = True
End SubSzintén abba a füzetbe, modulba:
Sub Darabteli(utvonal, sor%)
Dim ws As Object
Dim usor%
Set ws = Workbooks("A.xls").Sheets("Munka1")
usor% = ws.Range("B1").End(xlDown).Row + 1
If Application.WorksheetFunction.CountIf(ws.Range("B:B"), utvonal) = 0 Then
ws.Cells(usor%, 2) = utvonal
Else
Cells(sor%, 2) = Application.WorksheetFunction.VLookup(utvonal, ws.Columns("B:H"), 7, 0)
End If
End SubSub Beír(Érték)
Dim ws As Object
Dim usor%
Set ws = Workbooks("A.xls").Sheets("Munka1")
usor% = ws.Range("H1").End(xlDown).Row + 1
ws.Cells(usor%, 8) = Érték
End Sub -
Delila_1
veterán
válasz
m.zmrzlina
#10418
üzenetére
Csak este tudok foglalkozni vele, ha addig nem kapsz választ, megpróbálom.
-
m.zmrzlina
senior tag
válasz
m.zmrzlina
#10417
üzenetére
Tegnap kicsit fáradt voltam már. Szóval:
A felső rész B oszlopát írja a felhasználó (jelenleg a H-t is amit szeretnék kiváltani) Ez az FKERES-sel tökéletesen megy is.
Azt szeretném ha a felső munkalap "B" oszlopába ír egy útvonalat és ez még nem szerepel az alsó munkalap "A" oszlopában akkor azt a hozzá tartozó távolság adattal együtt hozzáfűzi az alsó munkalaphoz növelve ezzel az FKERES adatbázisát.
-
Delila_1
veterán
válasz
m.zmrzlina
#10413
üzenetére
-
Delila_1
veterán
válasz
m.zmrzlina
#10413
üzenetére
Ez egy sima fkeres.
=FKERES(A1;[MásikFüzet.xls]MunkalapNeve!$A:$F;6;0)Az A oszlop pedig =[MásikFüzet.xls]MunkalapNeve!$A1
-
Delila_1
veterán
válasz
m.zmrzlina
#10367
üzenetére
Valószínű, hogy az Excel beállítását is figyelembe veszi a területin kívül, ill. ahelyett.
Makrózd le - rögzítéssel - az Excelben való átállást.
Lásd Fire 10321-es hozzászólását. -
Delila_1
veterán
válasz
m.zmrzlina
#10364
üzenetére
Ezt
már elfelejtetted?
Egyébként a Find vagy Instr, és Mid függvénnyel is megoldhatod ciklus nélkül. Az elsővel kikeresed a "(" karaktert, ez+1 lesz a mid középső paramétere, majd a "%"-ot kikeresve meghatározod a 3. paramétert. (Az első a szám változó.) -
m.zmrzlina
senior tag
válasz
m.zmrzlina
#10362
üzenetére
Na közben rájöttem (azt hiszem). Így gondoltad?
Function KIHAMOZ(text As String, utantol As String, elottig As String, tizedesjel As String) As Double
Dim szam As String
szam = Mid(text, WorksheetFunction.Search(utantol, text) + 1, WorksheetFunction.Search(elottig, text) - WorksheetFunction.Search(utantol, text) - 1)
For i = 1 To Len(szam)
If Asc(Mid(szam, i, 1)) < 48 And Asc(Mid(szam, i, 1)) <> Asc(tizedesjel) Then
Mid(szam, i, 1) = tizedesjel
End If
Next i
KIHAMOZ = szam ' *1
End FunctionNem tudom kiemelni de a fv fejléc legvége és a legvégén kikommentezett 1-es szorzó lett változtatva.
De sajna ez az eredeti problémát csak nem oldotta meg.
-
válasz
m.zmrzlina
#10357
üzenetére
1. Szerintem(amit legalábbis a képeden látok), ahhoz makró sem kell(bár gondolom sok cellán, nagyobb tartományon kell végigjátszani a dolgot, ezért használod a makrót)
2. [link] -
válasz
m.zmrzlina
#10355
üzenetére
Szerintem egy kicsit körülményesen oldottad meg (bár így látatlanba, csak a példából nem biztos, hogy mindent látok/tudok), no: Mivel Function-t írtál, annak adj visszatérési paramétert.
(Ez esetben valami lebegőpontos típust pl Single vagy Double típust) -
Delila_1
veterán
válasz
m.zmrzlina
#10332
üzenetére
Hát ez az!
Tettek néhány jól alkalmazható funkciót (pl. szumhatöbb) bele, de az ilyen idétlenségek miatt nem tudom megszeretni a 2007-et.
Nekem is sok fejtörést jelentett, amit írtál, de ismerem a régebbi verzióból a feltételes formázás működését, abból rájöttem, hogy itt is úgy működhet, csak szerencsétlen a képletek megjelenítése.
Mondjuk az a rész, ahol módosíthatod a hatókört, könnyebben kezelhető a 2007-ben. -
Delila_1
veterán
válasz
m.zmrzlina
#10330
üzenetére
Nagyon szívesen.
Ezt is elrontották a 2007-ben. A régebbi verzióban ha megadtad a tartományra a képletet, egy másik oszlopra állva a felt. formázásnál már az arra az oszlopra vonatkozót láthattad. Abból világos volt, hogy ugyanúgy változik, mint egy munkalapra bevitt képletnél. -
Delila_1
veterán
válasz
m.zmrzlina
#10324
üzenetére
Szerintem is gyalázatosan rossz a 2007 súgója, a régebbi változatokét még emberi nyelven írták. Nem is értem, egy ilyen fontos szabályhoz miért nem tudnak egy tisztességes leírást adni! A súgó többi része is hasonló stílusban készült.
A feltételes formázásnál is úgy kell megadni a képletet, ahogy a munkalapon bármelyik másikat.
Nálad az volt a cél, hogy az A és B oszlop celláit a B értékétől függően színezze. A két oszlopra egyszerre bevitt képlet úgy működik, mintha beírtad volna az A oszlopba, majd átmásoltad volna a B-be. Az A oszlopban a B értékére hivatkoztál, ha ezt a képletet a B rögzítése nélkül átmásolod a B oszlopba, ott már a C oszlopra hivatkozol, ahol nem talál megfelelő adatot, ezért nem módosít a formátumon.
Csak annyit kell tudni, hogy az oszlopjelölő elé tett $ jel az oszlopot-, a sorazonosító előtt pedig a sort rögzíti, másoláskor a $ "előjeles" érték nem változik.
Leggyakrabban az FKERES függvénynél alkalmazunk abszolút hivatkozást, ahol fontos, hogy ugyanarra a tartományra hivatkozzon minden képlet. A B1-ben megadott
=FKERES(A1;D10:F20;2;0) képlet a B2 cellába másolva már más (D11:F21) tartományban keresne, és hamis értéket adna. C1-be másolva ugyanez a képlet =FKERES(B1;E10:G20;2;0) -re módosul, ami teljesen elrontja az eredményt.Ha egy táblázat celláiban a címsorra akarunk hivatkozni, akkor a képletben az első sort rögzítjük (=A$1*,9). A képlet lefelé másolásánál minden cella képletében marad az első sor, ám jobbra másolásnál az oszlopjelölő módosul (=B$1*,9), mivel azt nem rögzítettük.
-
m.zmrzlina
senior tag
válasz
m.zmrzlina
#10324
üzenetére
Mondtam már, hogy imádom az Excel súgóját?
Megjegyzés: A képletekbe beírhatunk cellahivatkozást (cellahivatkozás: A munkalapcella helyét kijelölő koordinátapár. A B oszlop és a 3. sor találkozásánál lévő cella hivatkozása például B3.) úgy, hogy a cellákat közvetlenül a munkalapon jelöljük ki. Ha a lapon jelölünk ki cellákat, akkor abszolút cellahivatkozásokat (abszolút cellahivatkozás: Képletben a cella pontos címét adja meg, a képletet tartalmazó cella helyzetétől függetlenül. Az abszolút cellahivatkozás formája: $A$1.) kapunk. Ha azt szeretnénk, hogy a Microsoft Office Excel megfelelően kezelje a kijelölt tartományban az egyes cellák hivatkozását, használjunk relatív cellahivatkozást (relatív hivatkozás: Valamely cella képletben megadott relatív helyzete a képletet tartalmazó cellához viszonyítva. A képlet másolásakor a hivatkozás automatikusan megváltozik. A relatív hivatkozás formája: A1.).
Hogy ez mennyire informatív!!!!

-
Delila_1
veterán
válasz
m.zmrzlina
#10306
üzenetére
Szivi.

-
Delila_1
veterán
válasz
m.zmrzlina
#10300
üzenetére
A B26 mindkét helyen legyen $B26.
-
adodaniel
őstag
válasz
m.zmrzlina
#10280
üzenetére
Igen, csak újraindítás után elfelejti.
-
m.zmrzlina
senior tag
válasz
m.zmrzlina
#10288
üzenetére
Másolás>Irányított beillesztés>Jegyzetet
Az ember néha nem látja a fától az erdészt

-
artiny
őstag
válasz
m.zmrzlina
#10254
üzenetére
Köszi segített

-
Kloden
senior tag
válasz
m.zmrzlina
#10246
üzenetére
Hálás köszönetem, siker!!

Gondoltam hogy nem lehet valami bonyolult dolog, de így, hogy még a nevét sem tudtam a funkciónak...
-
Delila_1
veterán
válasz
m.zmrzlina
#10210
üzenetére
Jó ötlet!
Ennyit egyszerűsítenék rajta a feltételnél:
If IsNumeric(Mid(szoveg, i, 1)) Thenés a végén a biztonság kedvéért:
CSAKSZAM = szam*1 -
Pityke78
őstag
válasz
m.zmrzlina
#10184
üzenetére
Nem, nincsen semmilyen makró a excle file-ban. Sőt ha nem jól működik a Ctrl+s parancs és bezárom, majd újraindítom, akkor általában már a mentést csinálja és nem mást.
Egyéb ötlet? -
Delila_1
veterán
válasz
m.zmrzlina
#10164
üzenetére

-
Delila_1
veterán
válasz
m.zmrzlina
#10161
üzenetére
A B2 cella érvényesítésébe kellene beírni a HA függvényt a Forrás-hoz.
=HA(A1="fizetések";G1:G4;H1:H4)
-
m.zmrzlina
senior tag
válasz
m.zmrzlina
#10161
üzenetére
Úgy látszik "dikleksziás" vagyok mint Győzike

a B oszlopban az A-oszlopnak megfelelően kellene egy legördülőnek nyílnia,
A tippem jó csak nem azt csinálja amit te szeretnél. Bocs

-
DjSteve85
csendes tag
válasz
m.zmrzlina
#10072
üzenetére
Thx!
Segített, ha esetleg gázosabb táblát kapok, tudnál segíteni a szövegfüggvény típusának kiválasztásába és alkalmazásába? Kezdő exceles vagyok, de könnyen tanulok...
Macro fan!
Üdv4 -
Delila_1
veterán
válasz
m.zmrzlina
#10070
üzenetére
Azért az nem megy a fejembe, hogy ha a 10061-es hsz szerint a leírások az R57:S70 területen vannak, és minden betű egyszer szerepel, hogy jön ki összesen 4 karakterre? Hiszen ez 14 cella!
-
Delila_1
veterán
válasz
m.zmrzlina
#10070
üzenetére
Ezt a max. 4 karaktert nem vettem észre, igazad van.
A hosszú képletedhez csak annyit, hogy az ÖSSZEFŰZ függvényt egyszerűsíteni lehet.
Az =ÖSSZEFŰZ(A1;B1;C1) egyszerűbben =A1&B1&C1.
Persze a lényegen ez nem változtat. -
Delila_1
veterán
válasz
m.zmrzlina
#10065
üzenetére
Le a kalappal!
Van egy baj: a lehetséges betűk száma 14, HA függvényből viszont csak hetet lehet egymásba ágyazni. Ez az az eset, mikor makrót kell írni.
Sub Leiras()
Dim sor%, oszlop%, betu%, nev$
Range("K57:K75,M57:M75,P57:P75").ClearContents
For sor% = 57 To 75
oszlop% = 10: GoSub Beir
oszlop% = 12: GoSub Beir
oszlop% = 15: GoSub Beir
Next
Exit Sub
Beir:
nev$ = Cells(sor%, oszlop%)
For betu% = 1 To Len(nev$)
Cells(sor%, oszlop% + 1) = Cells(sor%, oszlop% + 1) & Application.VLookup(Mid(nev, betu%, 1), Range("R57:S70"), 2, 0) & " "
Next
Cells(sor%, oszlop% + 1) = Left(Cells(sor%, oszlop% + 1), Len(Cells(sor%, oszlop% + 1)) - 1)
Return
End Sub -
m.zmrzlina
senior tag
válasz
m.zmrzlina
#10065
üzenetére
Javítás a #10065-höz:
K oszlop = J oszlop
-
MIFtIli
aktív tag
válasz
m.zmrzlina
#10062
üzenetére
elírtam. a táblázatban az első oszlopban a betűk. egy betű egy leírás.
A második variáció. Tehát:
a> leírás_1
ab> leírás_1,leírás_2
adc> leírás_1,leírás_4,leírás_3 -
válasz
m.zmrzlina
#9986
üzenetére
=HA(HIBÁS(INT(A1));"Ez nem szám";A1)
-
válasz
m.zmrzlina
#9974
üzenetére
És itt honnan kellene látnunk, hogy mi van az A2-ben?

Lehet, hogy tényleg nincs... -
MIFtIli
aktív tag
válasz
m.zmrzlina
#9968
üzenetére
-
fi:zi'k
nagyúr
válasz
m.zmrzlina
#9883
üzenetére
Egy kicsit módosítottam és ez is működik.
Hatalmas köszönet.
-
fi:zi'k
nagyúr
válasz
m.zmrzlina
#9881
üzenetére
A1-ben legördülő listában (érvényesítés) választható a,b,c értékek.
C1 cellában, a,b,c értékekhez rendre 1,2,3 értékek tartoznak, de nincsenek megjelenítve alapesetben.
Ha B1-be beírom hogy 10, akkor attól függően, hogy A1-ben mi lett kiválasztva, C1-ben képez egy szorzatot.
Pl. A1=a, B1=10 akkor C1=10, ha A1=b, B1=10 akkor C1=20, stb. -
fi:zi'k
nagyúr
válasz
m.zmrzlina
#9878
üzenetére
Szuper, neked is köszönöm!

-
m.zmrzlina
senior tag
válasz
m.zmrzlina
#9876
üzenetére
Persze hogy elszúrtam

Természetesen J3-ba tedd a képletet!
-
fi:zi'k
nagyúr
válasz
m.zmrzlina
#9875
üzenetére
Ha J3 cella "-", akkor G3=0. Ez világos remélem.

Ha J3 cella "+", akkor G3 cella értékét aszerint adja meg (megfelelő S cellát kiválasztva), hogy F3-ban mekkora érték szerepel, és ez az adott R cellákhoz miként viszonyul.#9874
Köszi! -
Sir Pocok
őstag
válasz
m.zmrzlina
#9803
üzenetére
Nagyon köszi!!
Este megnézem.
-
Sir Pocok
őstag
válasz
m.zmrzlina
#9798
üzenetére
Esetleg tudnál abban segíteni, hogy 2003-as Excel-ben melyik ez a funkció?
-
Sir Pocok
őstag
válasz
m.zmrzlina
#9795
üzenetére
Egy oszlop kb. 1000 sorból áll. Egy oszlopban a cserélendő szám előfordulhat 200-300x. Ezeket átírogatni elég körülményes lenne ezért kellene erre valamilyen függvény.
-
Sir Pocok
őstag
válasz
m.zmrzlina
#9793
üzenetére
Nem nincs.
-
tuono
csendes tag
válasz
m.zmrzlina
#9660
üzenetére
Köszönöm, de sajna 2003-as az excelem. atlagha nincs sajna.

-
visit
tag
válasz
m.zmrzlina
#9653
üzenetére
Igen, igeeeeen! Köszönöm!!
Ez az "abszolút hivatkozás", ez nem jutott eszembe. -
GabeeeS
csendes tag
válasz
m.zmrzlina
#9623
üzenetére
Kedves m.zmrzlina!
Nagyon szépen köszönöm!
Ez az internet igazi haszna, az elmék összekapcsolása, nem a rengeteg adat

Köszönöm szépen mindkettőtöknek!
-
Delila_1
veterán
válasz
m.zmrzlina
#9615
üzenetére

-
Delila_1
veterán
válasz
m.zmrzlina
#9613
üzenetére
A szum(K4:K34) meghaladja, illetve eléri a 24 órát (1 napot), ami az Excelben az idő alapegysége.
Az összegző cella formátuma legyen [ó]:pp, és helyreáll a lelke.
-
Delila_1
veterán
válasz
m.zmrzlina
#9544
üzenetére
Szívesen.
-
Delila_1
veterán
válasz
m.zmrzlina
#9541
üzenetére
Működik ez akkor is ha a kijelölt terület egy istentudjaholvan gépen futó excel97-ben van amit Remote Desktop-pal érek el?
Távoli gépet nem tudok produkálni, próbáld ki!
Átírtam a makrót úgy, hogy csak 1 oszlop, és max 100 sor kijelölésekor másoljon az F1-be.
Sub hiba()
If Selection.Rows.Count > 100 Or Selection.Columns.Count > 1 Then
MsgBox Selection.Rows.Count & " sort, és" & Chr(10) & _
Selection.Columns.Count & " oszopot jelöltél ki" & Chr(10) & "ejnye-bejnye"
Exit Sub
Else
Selection.Copy
Cells(1, 6).Select
ActiveSheet.Paste
Application.CutCopyMode = False
End If
End Sub -
Delila_1
veterán
válasz
m.zmrzlina
#9539
üzenetére
A Selection.Address string formában megadja a kijelölt területet, pl. "$A$:$C$50"
Ezt felhasználhatod a nyomtatási terület megadásához, ha a hibakeresésen átment.
ActiveSheet.PageSetup.PrintArea = Selection.AddressA cells(4,2).Select után a
Selection.CurrentRegion.Select
sor kijelöli a cellával egybefüggő területet. Ezt beviheted egy változóba.
ter=Selection.AddressBár ez nem illik a makródra, mert valószínűleg több oszlopnyi adatod függ egybe.
Ha az B4 alatt lévő adatok kellenek a nyomtatáshoz, célszerű a kijelölése után a
Range(Selection, Selection.End(xlDown)).Select -vel kijelölni az oszlopot. -
Delila_1
veterán
válasz
m.zmrzlina
#9537
üzenetére
Valahol biztosan lekérdezed a felhasználó kijelölését (selection.address), mert azt adod meg nyomtatási területnek. Az után tedd be.
-
Delila_1
veterán
válasz
m.zmrzlina
#9535
üzenetére
A paste elé tedd, exit sub-bal.
-
Delila_1
veterán
válasz
m.zmrzlina
#9533
üzenetére
Sub hiba()
If Selection.Rows.Count > 100 Or Selection.Columns.Count > 1 Then
MsgBox Selection.Rows.Count & " sort, és" & Chr(10) & _
Selection.Columns.Count & " oszopot jelöltél ki" & Chr(10) & "ejnye-bejnye"
End If
End SubKülön is veheted a túl sok sorra, és oszlopra vonatkozó figyelmeztetést.
-
válasz
m.zmrzlina
#9520
üzenetére
Pedig jobb lenne megfogadni perfag javaslatát, mert az eddig befektetett sok munkádon túl, sok munkád lesz pluszban, amit a rossz koncepciónak, programfelépítésnek, megvalósításnak köszönhetsz majd..

(pl space-el kezdeni egy szót, és azt még fel is használni) -
perfag
aktív tag
válasz
m.zmrzlina
#9495
üzenetére
Nem akarok akadékoskodni, de szerintem a koncepcióddal van baj. A kép alapján mondom, ide nem InputBox kell. Egy későbbi hozzászólásodban látom gondolkodsz már saját UserForm-ban, de oda sem TextBox kellene, hanem lista, vagy lenyílós lista.
Azt látom, hogy technikusok nevét kell megadnod. A lista a gépelési hibalehetőségekből eredő ellenőrzést is feleslegessé teszi.
Ha a munkalapodon elfér oda is tehetnéd a listát, a nyomtatásból kiveszed, a listaváltozáshoz hozzákapcsolod a makródat, passz. -
Geryson
addikt
válasz
m.zmrzlina
#9512
üzenetére
Az üres cellát hozza eredményül, nem jó.
bugizozi: persze, meglehetne, akár akkor másképp is, de nem akarok egy csomó nullát látni, ez lenne a lényege - csak ezt elfelejtettem leírni.
-
válasz
m.zmrzlina
#9495
üzenetére
Még korán van számomra(hétvégén ha 10-12 órát aludtam, az már túlzás, meg ma reggel is 5-kor feküdtem
), félreérthetően fogalmazok. Szóval az előbbit úgy értettem, hogy nem Te adhatod meg, hogy milyen gombok legyenek az InputBox-on, amik meg vannak, azoknak nincs olyan visszatérési értékük, mint MsgBox esetén.Persze le lehet kezelni több módon is az InputBox Cancel-t: [link] [link]
-
válasz
m.zmrzlina
#9493
üzenetére
Inputbox-ra sehogy, mivel nincsenek rajta gombok. Ezért írtam a MsgBox-ot, mert ott lehetnek gombok.
-
válasz
m.zmrzlina
#9491
üzenetére
MySelect = MsgBox("Valami", vbInformation + vbOKCancel, "Valami2")
If MySelect = vbCancel Then MsgBox ("Cancel") -
m.zmrzlina
senior tag
válasz
m.zmrzlina
#9490
üzenetére
Közben megoldottam a problémát.
Az Inputbox után a Select Case elé betettem ezt a sort:If InStr(tech, " ") = 1 Then tech = " " Else tech = tech
Mivel az Inputboxba nem várunk olyan adatot ami szóközzel kezdődik ezért bármilyen bevitt adat ami szóközzel kezdődik az törölni fogja a listát.
Van viszont más kérdésem az Inputbox-szal kapcsolatban.
Hogyan kell lekezelni a Cancel gombot, hogy valóban Cancel-ként viselkedjen? Jelen formájában ugyanazt csinálja mint az OK gomb. -
Cuci3
tag
válasz
m.zmrzlina
#9488
üzenetére
Az elejére bedobnék egy Msgboxot:
a=Msgbox("Valami", vbinformation + vbYesNo, "Valami2")
Ezzel meg lehet kérdezni, hogy törlni akar-e vagy új értéket beilleszteni, ezzel a space-t kiváltod (ha a = True / Yes, vagy mi kell ide, stb.). Ha mondjuk nem-re nyom, akkor mehet az inputbox.
u.i.: most a kódot nem ellenőriztem, csak beírtam fejből, rem jó lesz.
-
lappy
őstag
válasz
m.zmrzlina
#9463
üzenetére
És a színét hogyan lehet megváltoztatni?
Új hozzászólás Aktív témák
- Garancia kérdés, fogyasztóvédelem
- Samsung kuponkunyeráló
- D@reeo: Pi-hole és a Telekom Sagemcom F@st 5670 DNS beállítása
- Milyen alaplapot vegyek?
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Xiaomi 11 Lite 5G NE (lisa)
- Építő/felújító topik
- ASUS blog: kisebb, de nem gyengébb – a mini PC-k forradalma
- Kivégezheti a kisebb VGA-gyártókat az NVIDIA döntése
- Call of Duty: Black Ops 7
- További aktív témák...
- Windows 10/11 Home/Pro , Office 2024 kulcsok
- Játékkulcsok olcsón: Steam, Uplay, GoG, Origin, Xbox, PS stb.
- Fallout 4 Pip-Boy Edition
- Bitdefender Total Security 3év/3eszköz! - Tökéletes védelem, Most Ünnepi áron! :)
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Bomba ár! Lenovo IdeaPad V110-15ISK: i5-6G I 8GB I 500GB I 15,6" HD I Cam I W11 I Garancia!
- HIBÁTLAN iPhone 13 Pro 128GB Sierra Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3750, 100% Akkumulátor
- magyar billentyűzet - 121 - Lenovo Legion Pro 5 (16ARX8) - AMD Ryzen 7 7745HX, RTX 4070 - 4 év gar
- GYÖNYÖRŰ iPhone SE 2020 128GB White -1 ÉV GARANCIA - Kártyafüggetlen, MS3584, 100% Akksi
- Canon 1100D + 18-55 3,5-5,6 IS II digitális fényképezőgép
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi




![;]](http://cdn.rios.hu/dl/s/v1.gif)










Fferi50
