-
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
-
perfag
aktív tag
válasz m.zmrzlina #8151 üzenetére
A Súgó szerint nem, ez csak az Application objektum tulajdonsága.
Azért megkérdezném mi a célod? Mert lehet, hogy meg lehet kerülni pl. egy (Workbook.Change) eseményre írt makróval.Amikor az adott munkalapra váltasz akkor átvált, amikor elhagyod akkor visszavált. -
félisten
válasz m.zmrzlina #8156 üzenetére
Hali!
Az hogy az Excel a területi beállításoknak megfelelő karakterrel válassza el a tizedesjegyeket, az a számolási műveleteket nem befolyásolja. Teljesen mindegy hogy 2,00-t avagy 2.00-át szorzol össze 2-vel, az attól még 4 lesz, teljesen lényegtelen, hogy ezt az eredményt 4,00 avagy 4.00-ként jeleníti meg az excel.
Szóval csak ez miatt nincs szükség semmilyen beavatkozásra.
Az a példa, amit írtál az nem szám formátumú 63:37 (21.3 %) (már ha jól értem és ez egy cella tartalma) ergó nincs mit kezdeni a területi beállításokkal.
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)
-
félisten
válasz m.zmrzlina #8158 üzenetére
Hali!
"Csak mert nagyon nem így van."
Nem is írtam, épp azt írtam, hogy ha az egy cella tartalma, akkor az szöveg.
A cella tartalmát fel lehet dolgozni, adott esetben makró nélkül is, persze ehhez tisztában kell lenni, hogy azok a cellák milyen tartalmakat vehetnek fel. Pl példádnál maradva12:34 (12.34 %)
34:56 (34.56 %)
123:456 (56.78 %)Ebben az esetben a százalék értékek makró nélkül is kiszedhetőek és számmá alakíthatóak (százalékká is)
Ha ennél változatosabbak a cellatartalmak, nem ennyire kötöttek, akkor makró(de akkor sem biztos, csak tudni kellene, hogy mégis milyen tartalmak vannak a cellában)Szerk
Akkor inkább azt kérném, hogy pár cellatartalmat adj meg, meg azt, hogy mit szeretnél csinálni(nem képlet érdekel, hanem feladatleírás). Így látnám mi a probléma...Fire.
UI: Mellesleg ha kijelölnéd az összes ilyen cellát és egy sima csere segítségével lecserélnéd a pontot vesszőre már az is megoldást jelenthetne...
[ 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)
-
félisten
válasz m.zmrzlina #8160 üzenetére
Hali!
Átírtam a már majdnem jó megoldásod, itt A1-ben van a 12:34 (12.34 %)
=HELYETTE(KÖZÉP(A1;SZÖVEG.KERES("(";A1)+1;SZÖVEG.KERES("%";A1)-SZÖVEG.KERES("(";A1)-2);".";",")*1
Az egyetlen fontos dolog, hogy a százalékos értéknek minden cellában egy szóköz és % jel kövesse, tehát ahogy a példádban is van:
12:34 (12.34szóközszázalék)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)
-
Delila_1
Topikgazda
válasz m.zmrzlina #8163 üzenetére
Írj egy makrót a cserére, tegyél ki hozzá egy gombot. Amelyik gépen szükség van a cserére, megnyomják, a másikon nem.
A másik fórumon, ahol feltetted ezt a kérdést, már leírtam ugyanezt az választ.
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 m.zmrzlina #8163 üzenetére
Hali!
Akkor itt egy képlet, aminek "mindegy" hogy milyen a területi beállítás(minden olyan területi beállítás jó, amiben pont vagy vessző a tizedeselválasztó) illetve az is, hogy a cellában ponttal avagy vesszővel elválasztva szerepel a százalék. pl 12:34 (12.34 %) avagy 12:34 (12,34 %)
(Ha valaki nem pontot vagy vesszőt használ, akkor meg #ÉRTÉK hibát dob)=HA(HIBÁS(ÉRTÉK(HELYETTE(KÖZÉP(A1;SZÖVEG.KERES("(";A1)+1;SZÖVEG.KERES("%";A1)-SZÖVEG.KERES("(";A1)-2);".";",")));ÉRTÉK(HELYETTE(KÖZÉP(A1;SZÖVEG.KERES("(";A1)+1;SZÖVEG.KERES("%";A1)-SZÖVEG.KERES("(";A1)-2);",";"."));ÉRTÉK(HELYETTE(KÖZÉP(A1;SZÖVEG.KERES("(";A1)+1;SZÖVEG.KERES("%";A1)-SZÖVEG.KERES("(";A1)-2);".";",")))
Fire.
UI: Makrónál az lehet "gond", hogy ott meg minden usernél engedélyezni kell a makrók futtatását az Excel beállításokban illetve a munkafüzet megnyitásakor is rákérdez(het)...
[ 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)
-
Styleboy
tag
válasz m.zmrzlina #8174 üzenetére
Köszi a segítséget. Valahogy ez 2003ban nem akart működni,de a 2007ben jó.
Ezer hálám."Aquila non captat muscas" --- azaz "A sas nem fog legyeket"
-
m.zmrzlina
senior tag
válasz m.zmrzlina #8181 üzenetére
Olyan mintha valamelyik .Select vagy a Selection.ClearContents felülírná a vágólap tartalmát.
Hogyan lehetne lekezelni ezt a problémát úgy hogy ha nem muszáj nem szeretnék formot tenni a munkalapra?
-
m.zmrzlina
senior tag
válasz m.zmrzlina #8182 üzenetére
Közben megoldottam.
Az azért érdekelne, hogy mi is a pontos különbség Select és Activate metódus között.
-
perfag
aktív tag
válasz m.zmrzlina #8183 üzenetére
Ha a Google-be beírod "vba Select vs Activate" kapsz pár millió találatot a kérdésedre.
Azt írják, hogy a Select arra jó, hogy több munkalapot kiválassz egyidejűleg, míg az Activate-tel csak egyet lehet aktívvá tenni. Az MSDN kiemeli, hogy cellákat kijelölni csak aktív munkalapon lehet (munkalapokat kijelölni csak aktív munkafüzetben).A prog.hu-negy érdeks gondolat: Annyit azért megjegyeznék, hogy makróban a Select és Activate metódusok használata szerintem nagyon rossz gyakorlat. Miért? Mert valamennyi munkafüzet, valamennyi munkalap és valamennyi cella tartomány elérhető címzéssel.
-
félisten
válasz m.zmrzlina #8356 üzenetére
Hali!
Cellában
=KÖZÉP(A1;3;1)Makróban
Valtozo = Mid(Range("A1"), 3, 1)(melyik cella, hányadik karakterétől, hány karaktert)
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)
-
Delila_1
Topikgazda
válasz m.zmrzlina #8361 üzenetére
Feltételes formázás. Olyan színű legyen a cella, mint amelyik lámpa a három közül éppen on állapotban van. Ennyi feltételt a régebbi verziókban is elő lehet állítani.
Ez a színezett cella lehet az, amelyik az időpontot tartalmazza.[ 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
válasz m.zmrzlina #8363 üzenetére
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
válasz m.zmrzlina #8365 üzenetére
Kijelölöd az oszlopot, pl. az ábra szeinti F-et, és egyszerre adod meg a feltételes formázást. Fontos, hogy a képletben ne $E$2, hanem $E2, vagy csak E2 szerepeljen.
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 m.zmrzlina #8365 üzenetére
Hali!
Delila_1 megoldása tökéletes alapot nyújt a kivitelezéshez. Annyit kell tenned, hogy a táblázat struktúráját módosítod (az egy adott másodperchez tartozó értékek egymás mellé kerüljenek külön oszlopba, mert most egymás alatt új sorban vannak) illetve ennek megfelelően a feltételes formázá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)
-
Delila_1
Topikgazda
válasz m.zmrzlina #8365 üzenetére
Fire ötletével
Szerk.: a karakterek színét is átírhatod. Alapban fehér, a cella "on" értékénél az aktuális szín legyen a feltételes formázásban.
[ 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
válasz m.zmrzlina #8365 üzenetére
Na még egy kép, mikor egyszerre is bekapcsolt állapotban vannak egyes lámpák.
(Nem látszik, de ekkor az E oszlop van kijelölve)
[ 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
válasz m.zmrzlina #8370 üzenetére
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 m.zmrzlina #8377 üzenetére
Időközben az előző kérdés nagyban leegyszerűsödött.
Hogyan tudom a mindenkori aktív cella értékét (tartalmát) átadni egy változónak?
-
m.zmrzlina
senior tag
válasz m.zmrzlina #8378 üzenetére
Azt szeretném elérni, hogy az aktív cellában lévő tizedestörtről (aminek a formátuma dátum) leválasszam a napot reprezentáló egészrészt.
Tehát pl a 40438,00128 helyett 0,00128 kerüljön a a változóba.
-
perfag
aktív tag
válasz m.zmrzlina #8379 üzenetére
Ha az a változó értéke 40438,00128, akkor:
a = a - Fix(a)
levágja az egész részt. Ha nem vehet fel negatív értéket, akkor aFix() helyett jó az Int() függvény is. -
félisten
válasz m.zmrzlina #8401 üzenetére
Hali!
Igen.
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
válasz m.zmrzlina #8403 üzenetére
Hali!
1. Az a feltétel értelmetlen, mivel mindig igaz lesz. Azért, mert a sor- és oszlop indexek 1-től kezdődnek.
2. Nem tudom pontosan mit szeretnél megoldani, de ez így teljesen rossz próbálkozás Range(1, columnid_1).Select
Fire.
UI: Nálam nem működik a programkód gomb jelenleg, sőt a smiley-k sem...:-(
Szerk.
Újra szerkesztve már megy...[ 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)
-
félisten
válasz m.zmrzlina #8405 üzenetére
Hali!
"Ez a sor a Case szerkezet egyik ága ezért nem evidens hogy a columnid_1-nek 0-tól különbözik az értéke. Simán lehet 0 ezért kell ezt az esetet kezelni."
Ez a korábbi hsz-odból, meg ebből a kódból sem derül ki, mert a ActiveCell.Column sosem ad vissza nullát.
Gondolom a változók nullázásáról a kód más részén gondoskodsz.Ebből a kódból azt feltételezem, hogy az lenne a feladat, hogy az első oszloptól, az activecell oszlopáig az összes oszlopot kijelöld. Ha jól feltételezem, akkor azt így lehet megoldani
Range(Columns(1), Columns(ActiveCell.Column)).SelectFire.
[ 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)
-
Delila_1
Topikgazda
válasz m.zmrzlina #8418 üzenetére
Nem biztos, hogy erre gondoltál. Az A21, B21, és C21 cellák 0 és 255 közötti egész számot tartalmaznak. A makró az A22 cella hátterét színezi a fenti értékek szerint.
Sub szín()
Cells(22, 1).Interior.Color = RGB(Cells(21, 1), Cells(21, 2), Cells(21, 3))
End Sub[ 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.
-
m.zmrzlina
senior tag
válasz m.zmrzlina #8420 üzenetére
Illetve meg lehet fogalmazni úgy is a kérdést, hogy van-e a szín megadásának olyan módja amihez egyszerűbben lehet rendelni adattípust.
-
perfag
aktív tag
válasz m.zmrzlina #8418 üzenetére
Három adat az három adat! Ehhez tömb (array) változó kell.
[#8420] szerint csak egy adattal akarsz dolgozni, akkor a
.Color = hatterszin helyett .ColorIndex-et kellene használnod.
Szerintem.[ Szerkesztve ]
-
jobbacsabba
aktív tag
válasz m.zmrzlina #8431 üzenetére
Nekem ezek az egymásba ágyazott függvények szuahéliek. Az excelt csak közbenső állomásként használom az analitikai programok között és a végső vizualizáló program (origin) között.
Szemléltetve a problémát:
nm A
282.0 12.55
283.0 15.ápr
...
696.0 jan.32
: ilyen adatpárok vannak, amit a program beilleszt. A 15.ápr valódi értéke 15,04, de az excel már 2010.04.15-öt mutat cellatartalomra a szerkesztőlécben, de van pl. a jan.32 ami valójában 32,01 és a szerkesztő léc szerint pedig 1932.01.01 (akkor a 12.55 mért nem dec.55?)
Remélem érthetően adtam elő a problémámat.
Végül is a lényeg számomra, hogy míg excelt használok, valahol át kell állítanom, hogy mit értelmezzen tizedes elválasztóként.
Köszi a segítséget!
Ha nagy leszek megértem ezt a makró és egymásba ágyazott függvény dogot. Remélem.[ Szerkesztve ]
-
m.zmrzlina
senior tag
válasz m.zmrzlina #8433 üzenetére
Az If...Then okozta. A végére kellet az End If
-
Delila_1
Topikgazda
válasz m.zmrzlina #8441 üzenetére
Application.Goto Reference:="nomorelines"
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
válasz m.zmrzlina #8446 üzenetére
Azt hiszem, félreértettelek. Címke alatt egy cella címzésére gondoltam.
If valami then Go To Címke 'vagy Gosub Címke
Címke:
utasítások
Return 'Gosub esetén, innen az if-et követő sorba ugrik vissza.Ezt azonos modulban kell elhelyezned.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
perfag
aktív tag
válasz m.zmrzlina #8449 üzenetére
A Microsoft támogatás szerint "a line label defined in another procedure, you receive the error message "Label not defined." This message means that the label is not defined in the current Sub or Function." ez nem fog menni.
Megoldást én az Error Handling-ot felhasználva keresnék, Chip Pearson ezt írja: "Every procedure need not have a error code. When an error occurs, VBA uses the last On Error statement to direct code execution. If the code causing the error is in a procedure with an On Error statement, error handling is as described in the above section. However, if the procedure in which the error occurs does not have an error handler, VBA looks backwards through the procedure calls which lead to the erroneous code."
Az Err.Number-nek utánanéznék, milyen saját értéket adhatnék és ezzel vissza tudnék térni a főciklus ErrorHandlerébe, ahol egy GoTo, vagy GoSub a kívánt helyre vinné a vezérlést. -
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.
-
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.
-
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 -
perfag
aktív tag
válasz m.zmrzlina #8532 üzenetére
Exit Sub helyett Else.
Sub back_color()
If whatMin_new - whatMin_old < 0,000694 Then
backcolor=7
Else
If MeterEvent = "MeterLost" Then backcolor = 4
If MeterEvent = "MeterRecovered" Then backcolor = 3
End If
End Sub -
félisten
válasz m.zmrzlina #8557 üzenetére
Hali!
Private Sub CommandButton1_Click()
On Error Resume Next
ActiveSheet.Paste
If Err Then
MsgBox "Nincs mit beilleszteni." + Chr(13) + "Végezd el a kijelölést!", vbCritical, "Figyelem !!!"
Err.Clear
Exit Sub
End If
'további utasítások (jó ág)
End SubFire.
[ 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)
-
félisten
válasz m.zmrzlina #8560 üzenetére
Hali!
Először is amit kérdezel, az nem tudálékosság vagy okoskodás, nagyon helyes, hogy ezt megkérdezted, ha nem vagy tisztában ezzel a dologgal.
A legnagyobb tudásbázis természetesen a Microsoft MSDN Library-ban található, számos területen, egyetlen "gond", hogy angol, amit ha jól sejtem, nem űzöl alapszinten sem.
A sors fintora, hogy az OpenOffice tudásbázisában találtam magyarul leírást, és ahelyett hogy leírnám, hogy mi jó vagy nem jó a kérdésedben, inkább azt javaslom, hogy olvasd el, szerintem ezután már érthető/egyértelmű lesz a dolog.
Zomb€€
1. Ezt a "monológot" olvasd el.
(Mellesleg -tudtommal- nincs lehetőség az AutoDate formázás működésének beállítására)2. Ez érdekes kérdés, bevallom elsőre azt mondanám, hogy nem kivitelezhető, de ezt nem teszem, előbb utánanézek.
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
válasz m.zmrzlina #8564 üzenetére
Hali!
Kértem, hogy olvasd el a leírást (ami magyar ráadásul)
"Számomra ez arról szól, hogy az On Error Resume Next önmagában nem old meg semmilyen hibát csak ettől a kód "nem vesz tudomást" a hibáról."
nem akarom leírni mindent, ami a linken található, de az On Error Resume Next utasítás nem hogy letiltja, hanem bekapcsolja a beépített hibakezelőt(in-line error handler).
Az On Error Resume Next rögtön követő sor válthatja ki a hibát, ezért az elé kell rakni. Ha a hiba létrejön, akkor le lehet kezelni (IF err) és a program folytathatja a futását(a példaprogi amit adtam is ezt tenné, csak én abba beraktam egy Exit Sub sort, amivel ugyebár kilép a subrutinból).
Ha nincs hiba, akkor a hibakezelő rész "ki lesz hagyva" és úgy folytatja a futását.Zomb€€
Az OS Regional Settings (Területi Beállítások) módosítása globális, ha külön nincs felprogramozva az adott alkalmazás, akkor ezt veszi alapul. Az adatbázisoknál, amikor létrehozod őket, kapásból van lehetőség, magának az adatbázisnak a "területi beállításaira", azaz, hogy milyen formátumban tárolja az adatokat.(Oracle, Paradox, Access stb).
Ha a program felülbírálja a területi beállításokat(mert hogy lehet, sima formázással), akkor lényegtelen, hogy magának az adatbázisnak milyen területi beállításai vannak. Elsősorban amit érint ez a beállítás, az a Dátum/idő/pénznem...Szóval ezen esetekben(különösen a tizedesjegy-elválasztó esetén) érdemes csak magában az Excel-ben megváltoztatni az elválasztó karaktert, így nem fogja dátumként azonosítani a pl 1.23-at. Persze kézi beillesztéssel(nem pedig adatok importálásával adatbázisból) ez nem kivitelezhető anélkül, hogy az Exelben át ne írnád a tizedes-elválasztót, mert különben a pontal elválasztott tizedes számokat automatikusan dátumnak értékeli.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)
-
perfag
aktív tag
válasz m.zmrzlina #8574 üzenetére
Nézd meg ezt, ez egyszerű: [Sub modelled_import_v2()]
Egy másik módszer: megnyitja a txt fájlt Excel munkafüzetként és másolással átrántja az adatokat: [itt].
A profik [így] csinálják (van benne egy kis ErrorHandling is )[ Szerkesztve ]
-
dellfanboy
senior tag
válasz m.zmrzlina #8585 üzenetére
felírtam köszi
eladó dolgok:mondd az árát és vidd http://hardverapro.hu/tag/dellfanboy#aprohirdetesei
-
Sickboy25
addikt
válasz m.zmrzlina #8601 üzenetére
Köszi ez így jó lesz...
"Az élet olyan, mint az ásás. Néha hátráltat egy- két gyökér, de annak jól odab*szol ásóval, azt’ haladsz tovább!"X360 gamertag: sickboyhun
-
félisten
válasz m.zmrzlina #8621 üzenetére
Nincs ebben ellentmondás, csak vannak olyan esetek (általában egyszerű dolgok esetében), ahol a beépített funkciók lassabbak, mint egy VBA kód.
Az első példa erről szól, azaz a MAX függvény meghívása sokkal lassabb, mint egy IF/THEN/ELSE elágazás/struktúra alkalmazása.A második eset már teljesen más, hisz ott egy nagyobb tartomány összegét számolják ki, ciklus segítségével, ez esetben a beépített WorkSheetFunction.Sum függvény meghívása lényegesen hatékonyabb.
A topicban leggyakrabban elég egyszerű problémák merülnek fel, legalábbis arra gondolok, hogy nem igazán számít a sebesség. Egy összetettebb project esetében persze ezekre illik odafigyelni. A másik "probléma" meg az szokott lenni, hogy gyakran (főleg azon emberkéknél, akik nem rég óta ismerkednek az Excel-el illetve a VBA programozással) abba a hibába esnek, hogy a netről összeszednek mindenféle leírást és azt alkalmazzák, azaz ilyen dirib-darabokból "tákolják össze" a programjukat. Na ez öreg hiba, mert gyakran az egyik szubrutinjuk teljesen más programozástechnikát tartalmaz(akárcsak szintaktikailag is), mint a másik.
Az is gond kezdő emberkéknél, hogy nem arra használják az excel-t, amire az alapvetően hivatott, azaz néha úgymond adatbázis-kezelőként használják, olyan feladatokat szeretnének kivitelezni az excel-el, amire Ő nem igazán hivatott, és ilyenkor jön a teljesen felesleges makrózgatás, és a szükségtelenül bonyolult makrókódok.
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
válasz m.zmrzlina #8625 üzenetére
Hát ez gond, ugyanis a
Sheets("szűrőháló").Range("A1").Selectés
Sheets("szurohalo").Range("A1").Select
sem működhetne...Ha másik munkalapon állsz, akkor nem lehet direktbe hivatkozni(kiválasztani) így egy cellát. Szerintem telepíts szervízcsomagot az Office-hoz, mert jó eséllyel most nincs, vagy legalábbis nem naprakész a frissítése...
(Nálam sem megy egyik verzió sem, Office 2010 x64)
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)
-
iwu
addikt
-
Satchmo7
csendes tag
válasz m.zmrzlina #8675 üzenetére
Köszönöm a választ m.zmrzlina és Cuci3!
Villamosmérnök vagyok szóval a programozás nem áll messze tőlem de a suliba C-t meg Assembly-t tanultunk de a munkámba most makrókat kellene írnom, egyelőre nézegetem amiket küldtetek és nem megyek tanfolyamra. Ha még valakinek van ötlete milyen könyvvel induljak vagy online forrás azt nagyon megköszönöm.
-
iwu
addikt
válasz m.zmrzlina #8747 üzenetére
MAkró nincs, azt néztem.
a workbook open procedúrája hol van?ajándék ló nem látja a fától a szódás a lovát...
-
iwu
addikt
válasz m.zmrzlina #8751 üzenetére
hogy mik vannak
de sajna mindent üresnek látok.ajándék ló nem látja a fától a szódás a lovát...
-
Swen_N
csendes tag
válasz m.zmrzlina #8804 üzenetére
Szia
szuper ezaz! működik de van két probléma:
1. van vagy 30 sor, muszáj egyenként beállítani? nem lehet valahogy másolni, és persze akkor tudja a program, hogy mindig az aktuális sor dátumához viszonyítson.
2. csak akkor színeződik át, ha munkalapot váltok, nem automatikus. Ez miért lehet?
üdv,
Swen
-
Swen_N
csendes tag
válasz m.zmrzlina #8806 üzenetére
Köszönöm, tökéletesen működik, leszámítva a 2-es problémát, azt én sem értem miért csinálja illetve, nem csinálja!
Új hozzászólás Aktív témák
- Székesfehérvár és környéke adok-veszek-beszélgetek
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Hosszú idő után újabb előzetest kapott a Gothic Remake
- Xbox tulajok OFF topicja
- exHWSW - Értünk mindenhez IS
- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- Hivatalosan is bemutatkozott a Kingdom Come Deliverance 2
- Rövid teaser trailert kapott a Dragon Age: Dreadwolf
- Fotók, videók mobillal
- További aktív témák...
- Bontatlan - BATTLEFIELD 1 Collectors Edition - Játékszoftver nélkül
- Game Pass Ultimate előfizetések 1 - 25 hónapig azonnali kézbesítéssel a LEGOLCSÓBBAN!
- Microsoft licencek a KIVÉTELES ÁRAK - UTALÁSSAL IS AUTOMATIKUS KÉZBESÍTÉS - Windows és Office
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! LEGOLCSÓBB! Automatikus 0-24
- Eladó Steam kulcsok kedvező áron!