-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Tabletek, E-bookok Nyomtatók, szkennerek PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
Új hozzászólás Aktív témák
-
Apollo17hu
őstag
Sziasztok!
Lenne egy fontos és sürgős kérdésem:
Tudok-e VBA-ban "öngyilkos kódot" írni?
A lényege az lenne, hogy ha valaki a Projektet védő kódot mondjuk 3-szor rosszul üti be (VBAProject - Project Properties/Protection), akkor az azt eredményezi, hogy a projektből az összes kód törlődik és ráment a munkafüzetre.
Úgy néz ki elhagyom a jelenlegi munkahelyemet és a programokat ugyan itt hagyom, használhatják, de nem akarom, hogy a kódhoz bárki is hozzábabráljon (mégis csak az én "gyermekem").
Továbbá érdekelne, hogy hogyan is kell levédetni jogilag egy programot.
Mivel már csak korlátozottan fogok hozzáférni a gépemhez, nagyon sürgős lenne a dolog.
Köszönöm!
Szia!
A problémádra sajnos nem tudom a választ, viszont amit a munkahelyeden kódoltál, az a cég tulajdona. Szerintem érdemes lenne megfuttatnod a problémának ezt az olvasatát a jogász topikban, hátha felhomályosítanak.
-
Apollo17hu
őstag
Sziasztok!
Van egy 5x5-ös cellatartományom, legyen ez most A1:E5.
Azt szeretném megcsinálni, hogy egy gombnyomásra ezt az 5x5-ös területet másolja be ezalá mégegyszer. Ha megint megnyomom a gombot, akkor a következő alá illesztené be és így tovább.
Eddig idáig jutottam, hogy:
ActiveCell.Range("A1:E5").Select
Selection.Copy
ActiveCell.Offset(6, 0).Range("A1").Select
ActiveSheet.PasteEz pont azt csinálja ami nekem kéne, de csak akkor ha "jó helyre van kattintva".
Tehát ha máshova van kattinva induláskor, akkor már el van rontva az egész. Egy Rows("1:1").Select után tökéletes, egészen a második kattintásig, mert utána ugyanúgy mindig az 1:1 cellától fog indulni.
Valahogy azt kéne megoldani, hogy elmentse egy változóba azt, hogy hányszor lett már másolva. Ezt akár egy segédcellába is le lehetne menteni, de nem tudom hogyan. Azért is jó lenne ezt elmenteni, mert minden egyes másolt blokk mellé oda kéne írni, hogy ez éppen hanyadik.Nagyon megköszönék bármi nemű segítséget!

Első lépésben egy do while... ciklusban megszámolnám, hány cella van feltöltve az "A" oszlopban. Ezt letárolnám akár változóba, de akár valamelyik cellába ki lehetne íratni, majd ezt felhasználva az
ActiveCell.Offset(6, 0).Range("A1").Select
utasításban a 6-ost kicserélném az 1. lépésben meghatározott változó értékére.
-
Apollo17hu
őstag
Szép estét, Mindenkinek! Látom, hogy sok most ismerkedő teszi fel a kérdéseit, Én is ezek közé tartozom. Kérdésem az lenne, hogy egy bizonyos "alakzatot" megrajzoltam és hogy lehetne ezt elmenteni? Az "alakzatban" függőleges és vízszintes vonalak, Label-ek és Text box-ok vannak. Később ezeket az alakzatokat egy CommandButton-nal be is szeretném illeszteni, de most csak az első kérdésemre várom a hozzászólásokat. Egyelőre képet nem tudok készíteni, de igyekszem. Előre is köszönöm a válaszokat. Üdv.: Joe
Ha ez egy form, akkor szerintem a modulhoz hasonlóan lehet exportálni.
-
Apollo17hu
őstag
Mindenképp kapcsold be a bővítményeknél az Analysis Toolpak, és az Analysis Toolpak VBA nevűeket.
Ha más gépeken is alkalmazod a füzetedet, ott is be kell kapcsolnod. Az első a füzetben tesz elérhetővé egy rakás új függvényt, a második a VBA-ban kell a vezérlők kezeléséhez szükséges utasítások eléréséhez.
Ez a két bővítmény nálam most az "Inaktív alkalmazásbővítmények" kategóriában van. Ennek ellenére tudom használni a szükséges funkciót (konkrétan a MouseMove event az).
sztanozs: Igen, terjeszteném. A gépek Excel-verziója és -beállítása azonos, de nem tudom, kell-e engedélyezni rajtuk bármit is vagy sem. Ha kell, akkor elfelejtem az ActiveX-vezérlőket. (A makrók engedélyezését szerencsére az Excel értesítése megoldja, ActiveX-re nem láttam ilyet.)
-
Apollo17hu
őstag
Sziasztok!
Excel VBA-ban olyan problémába ütköztem, amihez már nem elegendőek az Űrlap-vezérlőelemek, hanem ActiveX-vezérlőkre van szükség. Milyen hátránya lehet, ha ActiveX-vezérlőkkel pakolom tele az Excel-fájlomat?
-
Apollo17hu
őstag
A VB szerkesztőben a füzetedhez tartozó ThisWorkbook lapra kattints rá bal oldalon, akkor jobb oldalon megtalálod a leírt események makróit.
A "gyorsító" makrók valószínűleg az egyes munkalapjaidhoz vannak rendelve, a fenti leírás szerint találod meg, a munkalapokra klikkelve egyenként.
Ez a probléma, hogy végignéztünk már szinte mindent, és még így is rejtély.
ThisWorkbook-ban két dolog van AutoOpen-hez rendelve:
- R1C1 -re állítódik a függvénykezelés,
- egy összesítő munkalapra ugrik a fókusz (ehhez az összesítő laphoz semmilyen makró nincs hozzárendelve).Azért ha idő közben újabb nyom van, vagy sikerül rájönni a probléma forrására, jelentkezem.
-
Apollo17hu
őstag
Sajnos se BeforeClose, se BeforeSave eseményt nem találtam, viszont kis szerencsével megtaláltam, hogy mely makró(k) fut(nak). (Az egyik az állapotsor szövegét is módosítja, ott vettem észre futás közben.) Az továbbra is rejtély, hogy miért indulnak el ezek a makrók. (Ebből az egyik egy "gyorsító" makró, ami kikapcsol mindenféle frissítést, kalkulációt, majd a végén mindent visszaállít.) Nálam 2007-es Excel van, munkatársamnál 2013-as, nála nem jelentkezik a hiba. Nagyon homály ez az egész nekem, de nemsokára én is átállok 2013-asra...
-
Apollo17hu
őstag
-
Apollo17hu
őstag
Sziasztok!
Van egy Excel-fájlom rengeteg makróval megbolondítva. Néhány hónapja vettem át egy kollégától, a makrókhoz szándékosan nem nyúltam, nehogy megboruljon az egész.
Sajnos az utóbbi időkben mentéskor(!) elég sűrűn fordul elő, hogy hibaüzenetet kapok, miszerint az egyik makró hibára futott. Mindez teljesen random jelentkezik (tehát nem minden mentéskor).
Van autoopen makró, és vannak olyan makrók is a munkafüzetben, amelyek worksheetchange esetén futnak.
Az a kérdésem, hogy létezik-e olyan makró, aminek futását a mentési esemény indítja el? Ha nincs, mi okozhatja a mentéskori indulást?
-
Apollo17hu
őstag
ha mindkét feltátelnek telejesülnie kell, akkor And el kapcsolod össze, ha csak az egyiknek akkor Or -al.
Így próbáltam, de hibaüzenettel leállt a makró.

Valószínűleg át kell majd írnom az egész kódot...
Kösz a segítséget. -
Apollo17hu
őstag
Hali!
Hogyan oldható meg az a probléma legegyszerűbben, ha egy Do ... Loop Until ciklusban az Until után 2 különböző feltételt szeretnék megadni? -
Apollo17hu
őstag
hát nemtom értem-e mit szeretnél, de ez tuti műkszik:
OpenDialog_Filter = ''Excel (*.xls), *.xls''
OpenDialog_Caption = ''Válassza ki a feldolgozni kívánt fájlt''
opendialog_selectedfile = Application.GetOpenFilename(OpenDialog_Filter, , OpenDialog_Caption)
Workbooks.Open Filename:=opendialog_selectedfile
csinál ''megnyitás'' ablakot és a kiválasztott fájlt megnyitja szépen. két aposztrófokat kicserélted macskakörömre? az előzőben volt egy sortörés is, ebből kivettem hátha az kavart be.
egyébként nem jó egy olyan megoldás, hogy az excelben csinálsz egy gombot neki és ahhoz rendeled hozzá a makrót?Kipróbáltam, macskaköröm is megvolt, de 404-es hibát kaptam.
Aopendialog_selectedfile = Application.GetOpenFilename(OpenDialog_Filter, , OpenDialog_Caption)
sorral van baja.

Csináltam két screenshotot, arról, amit valójában szeretnék:
Bővebben:� link <- ilyen most
Bővebben:� link <- ilyen lenne
Tehát Excelben meg tudom csinálni a parancsgombot(''összehasonlít'') (ezt tanultam is suliban, csak azért megy
), de az pofásabb lenne, ha ez a gomb egy exe-fájl formján lenne. (Bocsi, most vettem észre, hogy az egyik helyen ''összehasonlít'' van, a másikon meg ''összehasonlítás''. Természetesen a kettő funkciója ugyanaz lenne.)
Szerk.: Az első képen minden rendben, azt csak azért linkeltem, hogy egy hozzávetőleges ''ilyen most, ilyen lenne'' állapot legyen látható.
[Szerkesztve] -
Apollo17hu
őstag
OpenDialog_Filter = ''Szöveges fájlok (*.txt), *.txt''
OpenDialog_Caption = ''Válassza ki a feldolgozni kívánt fájlt''
OpenDialog_SelectedFile = _
Application.GetOpenFilename(OpenDialog_Filter, , OpenDialog_Caption)
...
Workbooks.OpenText Filename:=OpenDialog_SelectedFile
ez mondjuk txt-t nyit. vagy valami másra gondoltál?Sajnos ez nálam hibaüzenetet generál.

Olyasmire gondoltam, hogy egy - a felhasználó által kiválasztott - Excel munkafüzet megnyitása után egy gomb megnyomásával pl. megvizsgáljuk, hogy az A1 cella értéke egyezik-e a B1 cella értékével. Persze az én makróm ennél azért összetettebb, de ez elég egyszerű lenne.
Tehát van egy Commandbuttonom, amire ha rákattintok, ez történik:Private Sub CommandButton1_Click()
If Cells(1, 1) = Cells(1, 2) Then
MsgBox ''Az A1-es és B1-es cellák tartalma egyezik.''
Else
MsgBox ''Az A1-es és B1-es cellák tartalma nem egyezik.''
End If
End Sub
Na, és azt lenne jó megcsinálni, hogy ne kelljen a felhasználónak külön Sajátgépben/Intézőben keresni a munkafüzetet, majd onnan megnyitva Excelben futtatni a makrót, hanem lenne egy exe-program, amin lenne egy ''Megnyitás'' gomb és egy másik gomb, ami a megnyitott Excel munkafüzet aktuális munkalapján futtatná le mondjuk a fenti A1 - B1 összehasonlítást.
A könyv, amit olvastam, ezt a kódot írja a ''Megnyitás'' gombra:Private Sub Command1_Click()
CommonDialog1.ShowOpen
End Sub
Viszont itt a program formjára nemcsak a ''Megnyitás'' gombot, hanem egy CommonDialog-ot is el kell helyezni, ugyanezzel a kóddal. Így a ''Megnyitás'' gombra kattintva előugrik egy új ablak, ahonnan ki lehet választani a megnyitandó fájlt. Csak az a gondom, hogy a fájlok nem nyílnak meg.
Ide kéne még vmi parancs, csak erről már nem ír a könyv. 
-
Apollo17hu
őstag
Hali!
Írtam Excel-ben egy makrót. Meg lehet azt oldani, hogy VB-ben írok egy olyan programot, aminek egy CommandButton-jéra rákattintva megjelenik egy megnyitás ablak, és az abban kijelölt (xls-)fájl megnyílik? (Megnyitás ablakot és kijelölést könyv segítségével sikerült megcsinálnom, de magát, a fájl megnyitását nem.) Ezután a makró futtatását egy másik CommandButton-nel el lehet indítani? Ha igen, hogyan? -
Apollo17hu
őstag
A Val fügvénynél a . (pont) a tizedesvesző a számoknál.
Igen, azt vágom, h a tizedesjel VBA-ban a ''.''. Csak amikor '',''-t írtam, ezexerint a szövegként értelmezett számból az egészrészét tartotta meg.
-
Apollo17hu
őstag
szövegből számot csinál
Val(szöveges változó)
csak addig nézi amíg azámoz talál amit az első szövegkarakter megjelenik, abbahagya a számmá alakítást, és az addig talált számod adja visszaKöszi, akkor már értem azt is, h ilyenkor a tizedesvesszős értékekkel miért tudtam néha számolni.
-
Apollo17hu
őstag
Mit jelent a ''Val''?
Pl. ez mit csinál a változóval: Val(<változó>) ?ja, érték... -.-
-
Apollo17hu
őstag
Mit jelent a ''Val''?
Pl. ez mit csinál a változóval: Val(<változó>) ? -
Apollo17hu
őstag
-
Apollo17hu
őstag
Hali!
Hogy lehet azt megcsinálni VBA-ban, hogy egy adott min és max érték közé generáljon egy véleltlenszámot?
Én úgy próbáltam, hogy csináltam egy sima véletlenszámot, majd km hosszú If részekkel úgy alakítottam, hogy beleférjen min és max közé... szorztam, osztottam stb...
nincen egy egyszerűbb megoldás?
KÖSZI!Nem kell semmi If bele.
Pl. a -10 és +10 közötti páros számok alkotta halmaz így nézne ki:(Int (Rnd * 11) - 5) * 2
Új hozzászólás Aktív témák
-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Tabletek, E-bookok Nyomtatók, szkennerek PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
- Parfüm topik
- Samsung Galaxy S23 Ultra - non plus ultra
- Samsung Galaxy S26 Ultra - fontossági sorrend
- Le Mans Ultimate
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- World of Warships
- Kínai és egyéb olcsó órák topikja
- Nyaralás topik
- Anglia - élmények, tapasztalatok
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- További aktív témák...
- i9-9900KF + RTX 2060 SUPER Gamer PC
- HP EliteBook 6 G1 Ryzen 5 PRO 2.5 ÉV GARANCIA Csak 9 ciklus!
- AKCIÓ!!! GAMER PC: i5-12400F/13400F/14400F +RTX 5060 +16GB DDR4! GARANCIA/SZÁMLA (a Te nevedre)!
- HIGH END - 2026 MacBook Pro 16" 18C / 40C / 128 GB RAM - 4TB SSD - Magyar Billentyűzet - Space Black
- Mac Pro 6,1 2013 Late
- Dell Latitude 5300 13,3" FHD IPS touch, i5 - i7 8665U, 8-16GB RAM, SSD, jó akku, számla, 6 hó gar
- Razer Cobra Lightweight Minecraft Edition RGB Gaming Egér!
- Dyson Purifier Humidify+Cool PH2 De-NOx (White/Gold)
- iPhone 15 Pro Max 256GB 83% (1év Garancia) ESIM-es változat!
- AKCIÓ! Dell XPS 13 9305 13 FHD üzleti notebook -i5 1135G7 8GB DDR4 512GB SSD Intel IRIS XE W11
Állásajánlatok
Cég: aiMotive Kft.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest


), de az pofásabb lenne, ha ez a gomb egy exe-fájl formján lenne. (Bocsi, most vettem észre, hogy az egyik helyen ''összehasonlít'' van, a másikon meg ''összehasonlítás''. Természetesen a kettő funkciója ugyanaz lenne.)


