-
Fototrend
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
-
m.zmrzlina
senior tag
válasz Delila_1 #8448 üzenetére
Vagy estleg az is megoldás lehet, hogy a belső szubrutinban:
ha feltétel=igaz akkor egy logikai tipusú változót igazra állítok majd exit subAztán a főciklusban a hívás utáni sorban levizsgálom ezt a változót és igaz esetén innen már tudom küldeni a cimkére hamis esetén pedig foltatódik a főciklus a következő hívással.
Így fejben úgy tünik működhet ez a megoldás csak egy kicsit erőltetettnek tűnik.
Hogy szokták az ilyet csinálni?
-
Delila_1
Topikgazda
válasz m.zmrzlina #8451 üzenetére
A változók értékét átadhatod egy másik szubrutinnak. Pl. ha az Első() szubrutin C változójának az értékével szeretnél dolgozni egy Második nevű szubrutinban, akkor az Első rutinodban
Második C
módon hívod meg. A Második paramétere legyen C, vagyis
Sub Második(C)
.
.
End SubA Második End Sub-ja után a vezérlés visszajut a hívás helyét követő sorra.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
zsotesz81
senior tag
Hali!
Makróban azt hogy lehet megoldani, ha egy adott nevű munkalap létezik akkor ugorja át azt a részt ahol a munkalap létrehozása van?
-
félisten
válasz zsotesz81 #8456 üzenetére
Hali!
Ebből a kódból az alábbi részből meríthetsz ihletet
On Error Resume Next
Set My_Sheet = Sheets(My_Sheet_Name)
On Error GoTo 0
If Not My_Sheet Is Nothing Then
My_Sheet.Delete
End IfEz létező munkalap esetén törli azt, egy kis átalakítással neked is megfelelhet, de ez függ a programod felépítésétől.
Másik alapmódszer az szokott lenni, hogy egy ciklussal végigmész a munkalapokon, a cikluson belül megvizsgálod a nevét, ha megegyezik, akkor valamilyen változót magasra állítasz és kilépsz a ciklusból. Ezt követően megvizsgálod azt a bizonyos változót, éa feltételnek megfelelően kihagysz programrészt.
Fire.
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
Delila_1
Topikgazda
válasz m.zmrzlina #8455 üzenetére
Nézz utána a Public változóknak, amiről Perfag írt, vagy várj estig, míg újra gép közelébe kerülök.
Addig biztosan megírja valaki, mit kell tenned.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
m.zmrzlina
senior tag
válasz Delila_1 #8458 üzenetére
A kérdéseimre adott válaszokból meg a linkekből amiket kaptam pont azt deriváltam le hogy címkét nem lehet teljes munkafüzetre érvényes hatókörrel létrehozni a Public változók mintájára.
Szerintem marad a #8451-es hsz-ben vázolt ragasztgatós-szegelős megoldás. Bár ahogy #8457-ben láttam nem is annyira amatőr módszer.
Kész kódokra pedig végképp nem számítok mivel én ide nemannyira halért mint inkább hálóért járok.
Ha már háló. Lehet ezt a két parancsot egy sorban kiadni? Elegánsabb lenne.
If ActiveCell.Value = "" Then isLastRow = True
If ActiveCell.Value = "" Then Exit Sub -
perfag
aktív tag
válasz m.zmrzlina #8459 üzenetére
Bármelyik kezdőknek szánt VBA leckébe belenézel ott ez áll:
If conditions Then
expressions
Else
expressions
End IfAzaz a Then után új sor, majd az egészet lezárod End If-fel.
If ActiveCell.Value = "" Then
isLastRow = True
Exit Sub
End IfBár ahogy #8457-ben láttam nem is annyira amatőr módszer.
- de az!
- a #8457-ben nem azt láttad, amit Fire láttatni akart veled
- korábban is feltűnt, hogy makacsul ragaszkodsz első ötleteidhez, akkor minek kérdezel -
Medcomp
tag
Sziasztok!
Olyan gondom lenne, hogy ha az Excel 2007-ben menteni próbálok sokszor lefagy, miután megnyitotta a Mentés másként ablakot. (Jogtiszta, frissítve MS Update-tel).
Nem minden alkalommal csinálja, csak néha jön elő ez a hiba, főleg, ha sokáig dolgozok egy táblázatban, viszont akkor sem mindig.
Van esetleg ötlete valakinek, hogy ez mitől lehet? Word, Outlook normálisan megy, a gép egy hónapon belül volt újratelepítve, XP Home SP3 van rajta, eddig is ugyan ezek voltak, és nem volt gond.
www.medcomp.hu
-
perfag
aktív tag
válasz Medcomp #8461 üzenetére
Ez így nagyon kevés infó. Ha jogtiszta, akkor a Microsoft támogatáshoz is fordulhatsz a problémáddal, lehet, hogy a fájlt is el kellene küldened nekik. [
Csak ötlet: velem akkor fordult hasonló elő, amikor a makróimban ErroHandler volt és debug-oltam. Na, ettől elszállt párszor, nem csak a Mentés másként gombtól -
perfag
aktív tag
válasz Medcomp #8463 üzenetére
"táblázatokban semmi makrót nem használok" - ennyi infó nekem teljesen elég - mert akkor fogalmam nincs!
Egy próbát megér: Microsoft Információs Központ:. Kipróbáltam a legalsó menüpontot (Változó idejű rendelkezésre állás) - nem adják könnyen a bőrüket! A folyamaton végighaladva egy helyen azt mondja a lefagyásra, hogy a víruskeresőtől van. Én is azt mondanám De azért megnézném, mi van ha lekapcsolom a hálózatot és kikapcsolom a víruskeresőt is. Mentés próba 25-ször - aztán vagy ettől van, vagy tudom, hogy nem. -
Medcomp
tag
Tévedtem. Az egyik táblázatban, ami gyakran okozza a mentéskori fagyást van egy makró, ez:
Sub áthelyezés()
'
' áthelyezés Makró
' Rögzítette: Gép_03, dátum: 2007.01.10.
'
'
Sheets("Munka11").Select
Rows("2:45").Select
Selection.Copy
Sheets("Munka1").Select
Range("A2").Select
ActiveSheet.Paste
Sheets("Munka11").Select
Application.CutCopyMode = False
ActiveWindow.SelectedSheets.Delete
End SubEz esetleg okozhatja?
www.medcomp.hu
-
zsotesz81
senior tag
válasz Fire/SOUL/CD #8457 üzenetére
oks, köszi majd próbálkozok
-
rTyler
csendes tag
hello
legyszives vetne erre valaki egy pillantast?
b oszlopban vannak keresztnevek
c oszlop ures
d oszlopban keresztnevek
e oszloopban d-hez tartozo email cimekb oszlop elemei megtalalhatoak d-ben
arra lenne szuksegem, hogy a b oszlop tagjait megkeressem d oszlopban es a c oszlopba bemasoljam e-bol a b-hez tartozo email cimeket
pelda
b1 kiss
b2 kovacs
b3 toth
b4 horvathc1
c2
c3
c4d1 kiss
d2 kelemen
d3 hajdu
d4 fabian
d5 kovacs
d6 toth
d7 kerekese1 kiss.erno@pl.hu
e2 kelemen@pl.hu
e3 hajdu@pl.hu
e4 fabianbela@pl.hu
e5 kovacs.kovi@pl.hu
e6 toth.bence@pl.hu
e7 kerekeskerek@pl.huami a vegeredmeny kellene negyen:
c1 kiss.erno@pl.hu
c2 kovacs.kovi@pl.hu
c3 toth.bence@pl.hu
c4 -tudna valaki segiteni?
-
félisten
Hali!
1. Gondolom vezetéknevek inkább...
2. D oszlopban csak egyszer szerepel egy vezetéknév vagy többször?
3. Ha nem túl sok adatról van szó és nem is változik gyakran, akkor Autoszűrővel is kivitelezhetőFire.
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
félisten
-
Delila_1
Topikgazda
válasz Fire/SOUL/CD #8474 üzenetére
Majd megtudjuk a válaszból.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
rTyler
csendes tag
válasz Fire/SOUL/CD #8474 üzenetére
igen, bocs, keresztnev
tobbszor szerepel, de elvileg barmelyik jo belole, mert egy ember tobb email cime... -
félisten
Hali!
Rendben csak azt tudd, hogy Delila_1 képlete (ami egyébként kifogástalan) az a legelső előfordulásnál megáll, hiába van 5 különböző mailcíme az illetőnek, mindig a legelsőt fogja eredményül adni, ergó a többi 4 mailcím az csak ballaszt...
Fire.
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
Delila_1
Topikgazda
válasz Fire/SOUL/CD #8479 üzenetére
Az autoszűrő helyett inkább kimutatást javasolnék.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
félisten
válasz Delila_1 #8482 üzenetére
Hali!
Ööö, ezt nem értem... Kimutatással hogy pakolsz át adatokat egyik cellából egy másikba?
(Szerintem 100%, hogy félreértjük egymást. )Fire.
[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
rTyler
csendes tag
ezaz, mukodik
koszonom szepenpusztan kivancsisagbol; azt is meg lehet oldani, amirol Fire/SOUL/CD beszel?
mondjuk, ha b-ben 3 kovacs van, d-ben 4 kovacs -> e-ben emailjeivel, akkor ne csak az elsot, hanem az elso 3at kopizza?
senkinek nem akarok visszaelni a turelmevel, csak kerdes -
félisten
Hali!
Igen, megoldható amit kérdezel, de "csak" makróval. Ahogy Delila_1-et "ismerem", most már "gőzerővel" dolgozik a makrón, amit hamarosan meg is oszt veled...
Fire.
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
Delila_1
Topikgazda
válasz Fire/SOUL/CD #8486 üzenetére
Tévedsz! Makró nélkül oldottam meg, de csakis azért, hogy ellenkezzek.
A D után beszúrtam egy oszlopot, aminek a képlete (D1-é):
=D1&DARABTELI(D$1:D1;D1)Az I1 képlete: =FKERES($B1&1;$E:$F;2;0)
J1: =FKERES($B1&2;$E:$F;2;0)
K1: =FKERES($B1&3;$E:$F;2;0)Persze ezen még lehet finomítani a hibakezeléssel.
[ Szerkesztve ]
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
Hibakezeléssel az I1 képlete
=HA(HIBÁS(FKERES($B1&1;$E:$E;1;0));"";FKERES($B1&1;$E:$F;2;0))Ezt kell jobbra másolni, és a félkövér, dőlt 1-et oszloponként növelni 1-gyel.
[ Szerkesztve ]
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
A megoldás, hogy az I1-ben hozza a B1-es ember első e-mail címét, J1-ben a másodikat, K1-ben a harmadikat, stb., ameddig jobbra másolod a képletet. Akinek nincs 2., 3. címe, ott üresen hagyja a cellát.
Ezeket a képleteket együtt lemásolod addig a sorig, ameddig a B oszlopodban tartanak a nevek.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
rTyler
csendes tag
ez holnapra marad, megyek haza
Delila_1, remelem rendesen megfizetik a skilljeidet, mert nalunk az egesz office osszesen nem ert ennyit az exclehez
-
szab.tam
nagyúr
hi!
egyszerű kérdés:
excel 2007
hol lehet, (ha lehet egyáltalán), rábírni arra, hogy alapértelmezetten a táblázataimat ne egy ablakban akarja megnyitni, hanem külön ablakban, és ki tudjam tenni több monitorra a különböző táblázatokat. mert most csak a nézet / ablakváltással tudok váltani, de így nem látom egyszerre a 2 táblázatot....a world külön ablakban nyílik, és nem látom a beállítás különbséget...
előre is thx!
fanless project: fourth gear......................................................................... http://prohardver.hu/teszt/interju_csucskonfig_passzivan_hutve/kezdetek.html
-
szab.tam
nagyúr
válasz Delila_1 #8496 üzenetére
asszem nem érted:
teljesen külön ablakban szeretném látni.
nem egy ablakban egymás mellett, hanem 2 külön megnyíló alkalmazásban, amit külön tudok mozgatni.fanless project: fourth gear......................................................................... http://prohardver.hu/teszt/interju_csucskonfig_passzivan_hutve/kezdetek.html
-
szab.tam
nagyúr
válasz Delila_1 #8498 üzenetére
ok. thx!
csak mert piszok idegesítő, hogy monitor szélességű táblázataim vannak, és több kijelzőm is van, de nem tudom egymás mellett külön alkalmazásban megnyitni őket, egymástól függenek így.
fanless project: fourth gear......................................................................... http://prohardver.hu/teszt/interju_csucskonfig_passzivan_hutve/kezdetek.html
Új hozzászólás Aktív témák
- Canva Pro előfizetés - 1 éves
- Steam, Windows, Origin kulcsok, előfizetések közvetlenül a kiadótól, a LEGJOBB ÁRON!
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Bitdefender Total Security 3év/3eszköz! - "Tökéletes védelem most kedvező áron..."
- Microsoft licencek a KIVÉTELES ÁRAK - UTALÁSSAL IS AUTOMATIKUS KÉZBESÍTÉS - Windows és Office