Hirdetés

2017. május 29., hétfő

Gyorskeresés

Útvonal

Fórumok  »  Szoftverfejlesztés  »  Visual Basic

Hozzászólások

(#2801) Bobrooney válasza Pali79 (#2800) üzenetére


Bobrooney
(senior tag)

Egy kicsit járj utána a dolgoknak, magyarul is találsz rengeteg könyvet, legalább a vezérlőket lesd meg, meg hogy miket tudnak, hidd el könnyebb dolgod lesz. Pl:
[link]

(#2802) Pali79


Pali79
(fanatikus tag)

Újabb kérdés: hogyan lehet gyökvonást csinálni? A neten Sqrt parancsot olvastam, de ilyen nincs a parancslistában.

(#2803) Ispy válasza Pali79 (#2802) üzenetére


Ispy
(PH! addikt)

Math functions

A kód elejére ird be, hogy Import system.math, vagy ahol használni akarod oda, hogy Math.sqrt.

[ Szerkesztve ]

Három fajta ember van. Aki tud számolni, és aki nem.

(#2804) Pali79 válasza Ispy (#2803) üzenetére


Pali79
(fanatikus tag)

Szuper, köszi! Bár most megoldottam 0,5 hatványozással, még egyszerűbb is.

(#2805) Pali79


Pali79
(fanatikus tag)

Megint elakadtam... :W A régebbi leírásokba volt olyan, hogy INT, ez elméletileg a szám egész részét adja. Nekem az kell, hogy a számítás végeredménye csak egész legyen, nem kellenek a tizedes jegyek, de ilyet a linkelt leírásban sem találtam.

(#2806) Ispy válasza Pali79 (#2805) üzenetére


Ispy
(PH! addikt)

Math.Round

Egyébként a gugli sokat tud ám segíteni, ha megkérdezed :)

Három fajta ember van. Aki tud számolni, és aki nem.

(#2807) Pali79 válasza Ispy (#2806) üzenetére


Pali79
(fanatikus tag)

Próbáltam én, hidd el! Én sem szeretek ennyit kérdezni, de nem jutottam egyről a kettőre.

(#2808) Bobrooney válasza Pali79 (#2807) üzenetére


Bobrooney
(senior tag)

Mint írtam annyi könyvet találsz mint a nyúlsz@r csak neki kéne esni.

(#2809) Ispy válasza Pali79 (#2807) üzenetére


Ispy
(PH! addikt)

Az is sokat segít, ha nem VB 6-os könyvből tanulsz .NET-et programozni :P

Három fajta ember van. Aki tud számolni, és aki nem.

(#2810) Delila_1 válasza Pali79 (#2807) üzenetére


Delila_1
(PH! kedvence)

Itt nézd meg a Téma összefoglaló alsó sorát.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#2811) alexy92


alexy92
(fanatikus tag)

Sziasztok,

Egy olyan makrón dolgozom, ami több hasonló műveletet végez el, több sheetről. A kérdésem az lenne, hogy van-e olyan parancs ami közé be tudom illeszteni az egyes részeket, hogy ha azon belűl bármi hibára fut, akkor azt a részt ne futassa le, hanem egyből a következő hasábra menjen?

Előre is köszönöm!

(#2812) Bobrooney válasza alexy92 (#2811) üzenetére


Bobrooney
(senior tag)

Hello!

[link]

(#2813) alexy92 válasza Bobrooney (#2812) üzenetére


alexy92
(fanatikus tag)

Köszi nézegettem, de nem nagyon érzem úgy, hogy az én megoldásom lenne.

Csináltam egy képet, hogy ábrázoljam mi is az én bajom:

És kb most 30-40 ilyen blokkról beszélek. Nem debugot keresek, hanem egyszerűen az általam választét részt hagyja el.

Köszönöm!

[ Szerkesztve ]

(#2814) Delila_1 válasza alexy92 (#2813) üzenetére


Delila_1
(PH! kedvence)

Nézd meg ezt!

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#2815) alexy92 válasza Delila_1 (#2814) üzenetére


alexy92
(fanatikus tag)

Köszi, sajnos a benti hálozatom letiltja az oldalt, de otthon megnézem, és visszajelzek!

(#2816) alexy92 válasza Delila_1 (#2814) üzenetére


alexy92
(fanatikus tag)

Szia,

Sikerült megnéznem. A kérdésem az lenne, hogy ezt hogyan tudnám egy macroba rakni ?

(#2817) Delila_1 válasza alexy92 (#2816) üzenetére


Delila_1
(PH! kedvence)

A Module1-ben találod a makrókat.
Írd meg a 9 rutint, ahol a

Range("C" & sor) = Range("A" & sor) / Range("B" & sor)

sor helyére beírod a saját feladatodat. Az

If Err.Number <> 0 Then RutinC Else RutinB

sor helyén a saját rutinjaid nevét add meg! Minden rutinban különböző feladatokat adhatsz meg az én makróim osztása helyett.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#2818) Bazs87


Bazs87
(kvázi-tag)

Sziasztok!

VBS-ezgetek egy ideje, nagyon tetszik, hogy nem kell semmit telepíteni és pofátlanul egyszerűen használható, mindezt úgy, hogy még regexp lib is van hozzá.

Egy hobbiprojekt kapcsán megkeresett egy ismerősöm, hogy vb8-ban kellene valamit alakítani, ráadásul excel VBA funkciók átvételéve.
Mi és mekkora a különbség a vb és a vb.net közt? Egyértelmű leírást nem találtam eddig, igaz csak pár percet gugliztam.

Úgy gondoltam, h ha már vb.net akkor ne a 8-assal szerencsétlenedjünk, hanem az épp aktuális visual studio verzióval.

Vajon nagy fába vágom a fejszém ezzel? (sima "adatbázis"építés txt-ben és azokkal manipulálgatni, komolyabb dolgok elvileg nincsenek benne)

Köszi előre is!
Bazs87

(#2819) martonx válasza Bazs87 (#2818) üzenetére


martonx
(PH! addikt)

Szia, a VBS tökéletes játszós nyelv, viszont semmi semmivel nem kopmatilibis aminek a nevében szerepel a visual basic.
Ugyanakkor a szintaktikájuk azonos, szóval annyira nem vészes vbs-ről vb.net-re tovább mozdulni, pláne ha zöldmezős fejlesztésről van szó, akkor én csakis VB.NET-tel állnék neki (na jó én személy szerint C#-al, de a lényeg hogy .Net).

Én kérek elnézést!

(#2820) Bazs87 válasza martonx (#2819) üzenetére


Bazs87
(kvázi-tag)

köszönöm a választ!

én inkább delphiznék, de nagyon csábító, hogy a feladat nagyját elég lenne copyzni és otpimalizálni. Minden újraírni elég nagy favágás lenne valszeg. (excel funkciókat kellene átülteni egy programba és kicsit továbbokosítani)

Mivel ismerős, akivel csinálom csak vb-ben van otthon, így csak ez marad, de akkor legalább ne a vb8-cal csináljuk...

ideje lenne valamilyen naprakész rendszerrel is dolgozni, továbbá kizáró feltétel, hogy GUI is kell

(#2821) sztanozs


sztanozs
(PH! addikt)
LOGOUT blog

Erre rá tudna pillantani valaki? [link]
Tudom, hogy perverz, de nagyon kellene...

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...

(#2822) Ispy válasza sztanozs (#2821) üzenetére


Ispy
(PH! addikt)

Inkább írd le, hogy pontosan mit szeretnél csinálni, és meglátjuk arra tudunk-e válaszolni. :)

Valami szöveges fájlból szeretnél adatokat kinyerni?

Három fajta ember van. Aki tud számolni, és aki nem.

(#2823) sztanozs válasza Ispy (#2822) üzenetére


sztanozs
(PH! addikt)
LOGOUT blog

Szeretnék VBA alatt elérni a System.IO.File statikus osztályt, hogy a File.Open statikus függvénnyel FileStream-et állítsak elő. Ehelyett nekem az is megfelelő, ha a FileStream osztály inicializálni tudom. De ugye VBA alatt csak defualt - argumentum nélküli - konstruktor hívható, de a FileStream-nek nincs ilyen, ezért a new keyword sem használható.

Igazából az volna, hogy most működő - Excel addin - System.Security.Cryptography.SHA512Managed objekumomat nem byte-array-jel etessem meg, hanem FileStream-mel. Ez egyrész jóval gyorsabb, másrészt memóriatakarékosabb, harmadrészt működik 2GB feletti fájlokkal is.
PowerShell és natív .NET kilőve. Esetleg még VBS jöhet szóba, de az ugyanez a tészta.

[ Szerkesztve ]

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...

(#2824) Ispy válasza sztanozs (#2823) üzenetére


Ispy
(PH! addikt)

Hát ilyet én még nem csináltam VBA-ban (szerencsére már semmi nem csinálok VBA-ban jó ideje :D ), de a gugli szerint lehetséges.

Három fajta ember van. Aki tud számolni, és aki nem.

(#2825) sztanozs válasza Ispy (#2824) üzenetére


sztanozs
(PH! addikt)
LOGOUT blog

Köszi, ezt én is megtaláltam már. Az a baj ezzel, hogy ezek nem .NET FileStream objektum megoldások, hanem a VBScript-ben is használt FSO (FileSystemObject). Ezt nem tudom megetetni a másik (SHA512Managed) .NET osztállyal.

[ Szerkesztve ]

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...

(#2826) martonx válasza sztanozs (#2823) üzenetére


martonx
(PH! addikt)

Miért nem írsz te magad egy excel addin-t normális .Net-ben? És utána azt használhatnád Excel VBA-ból. Hozzáteszem csak ötletelek, nem tudom, hogy ez járható út-e?

Én kérek elnézést!

(#2827) sztanozs válasza martonx (#2826) üzenetére


sztanozs
(PH! addikt)
LOGOUT blog

Mert a DLL addin-t (XLL) telepíteni és regisztrálni kellene ami a jelenlegi környezetben igen macerás.

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...

(#2828) martonx válasza sztanozs (#2827) üzenetére


martonx
(PH! addikt)

Akkor ideje webre migrálni az egész hóbelevancot ;]

Én kérek elnézést!

(#2829) Bazs87


Bazs87
(kvázi-tag)

Sziasztok!

A fórumot olvasva kedvet kaptam az excel vba-hoz. Olyan amatőr kérdésem lenne, hogy hogyan tudom visszakapni a felhasználó által aktuálisan kiválasztott cellát? És milyen változóban tudom az értéket kimenteni?

A zárolt sor oszlopnál selectelnem kell, de elég idegesítő, h ugrál a kurzor. Az elején lementeném a végén pedig visszanavigálnék ugyanoda. Elméletem szerint így észre sem lehetne venni a működését.

Netán hamvába holt ötlet?

Köszi!
Bazs87

[ Szerkesztve ]

(#2830) Bazs87 válasza Bazs87 (#2829) üzenetére


Bazs87
(kvázi-tag)

megoldódott ActiveCell-string, az odavissza kapcsolgatás meg nem szép:D Imsertek esetleg jobb megoldást?

(#2831) sztanozs válasza Bazs87 (#2829) üzenetére


sztanozs
(PH! addikt)
LOGOUT blog

Miért kell selectelned? Az maximum copy-paste-hez kell.
Minden mást meg lehet oldani ActiveCell nélkül.

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...

(#2832) Delila_1 válasza sztanozs (#2831) üzenetére


Delila_1
(PH! kedvence)

Még ahhoz sem.

range("a1:d10").copy range("m20")

vagy
Range("a1:b10").Copy
Range("m5").PasteSpecial xlPasteValues

[ 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.

(#2833) Bazs87 válasza sztanozs (#2831) üzenetére


Bazs87
(kvázi-tag)

ActiveWindow.FreezePanes = False
Range("F7").Select
ActiveWindow.FreezePanes = True

Ha 2D-s zárolást szeretnék(azért mert ha csak 1D-t csinálok kizárólag az első sor lehet valamilyen beteg ok miatt zárolva, viszont én az első x sort szeretném zárolni), akkor vmivel ki kell jelölnöm, hogy honnan zárjon és manuális megoldással ezt az odaklikkeléssel lehet elérni.
Talán van valamilyen expert funkció, de sajnos én nem ismerem.
Nyitott vagyok és érdeklődő ;)

[ Szerkesztve ]

(#2834) sztanozs válasza Bazs87 (#2833) üzenetére


sztanozs
(PH! addikt)
LOGOUT blog

Google 5sec, első második találat (bár az elsőben is ott van, csak nem az első válaszban és kicsit fellengzősebben):
With ActiveWindow
If .FreezePanes Then .FreezePanes = False
'Freeze F6: 5 oszlop és 6 sor zárolása
.SplitColumn = 5 'fix oszlopok száma
.SplitRow = 6 'fix sorok száma
.FreezePanes = True
End With

[ Szerkesztve ]

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...

(#2835) Bazs87 válasza sztanozs (#2834) üzenetére


Bazs87
(kvázi-tag)

a gyakorlat meg az évek :)

nekem ez konkrétan az első excel makróm:p

köszi a tippet!

(#2836) sztanozs válasza Bazs87 (#2835) üzenetére


sztanozs
(PH! addikt)
LOGOUT blog

Ok, mindent bele és gyúrj rá a keresésre - szinte minden esetlegesen felmerülő problémádra van már megoldás.

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...

(#2837) vilag


vilag
(tag)

Sziasztok!

Az lenne a kérdésem, hogy lekérdezhető-e valahogyan az autofilterrel szűrt találatok eredménye?

A bal alsó sarokban ugye kiírja, hogy "4061 rekordból 13 rekordot talált"

Ez utóbbi számot szeretném valahogy VBA-ban lekérdezni.

Megoldható ez?
Googliban és VBA-ban sem találtam megoldást (ez persze nem azt jelenti, hogy nem is létezik megoldás).

Üdv, vilag

(#2838) Amiens válasza vilag (#2837) üzenetére


Amiens
(tag)

Sima Részösszeg()-gel is megpróbálhatod.

=RÉSZÖSSZEG(3;A2:A11)

[ Szerkesztve ]

Lumia 950 / Nokia E72

(#2839) vilag válasza Amiens (#2838) üzenetére


vilag
(tag)

Lényeges lenne, hogy VBA-ból lehessen lekérdezni, mert a szűrési folyamat is onnan fut és ha nincs találat akkor hibára futok.

Ezzel szeretném ezt kiküszöbölni, mert ha a szűrés eredményeként 0 találat van, akkor azt már könnyedén le tudom kezelni.

[ Szerkesztve ]

(#2840) Ispy válasza vilag (#2839) üzenetére


Ispy
(PH! addikt)

Gugliban ezt találtam, nem tudom segít-e rajtad.

Három fajta ember van. Aki tud számolni, és aki nem.

(#2841) Amiens válasza vilag (#2839) üzenetére


Amiens
(tag)

Akkor még egyszerűbb a dolgunk:
szurt = Application.WorksheetFunction.Subtotal(3, Range("A2:A10"))

Lumia 950 / Nokia E72

(#2842) vilag válasza Amiens (#2841) üzenetére


vilag
(tag)

Köszönöm!

Ez a triviális megoldás nem jutott eszembe, gondoltam elegánsabb lekérdezni az excelből ha már tudja, így attól az elképzeléstől nem tudtam elvonatkoztatni.

Kicsit alakítani kellett rajta, mert a "fejléc" 14 sor, de sikerült megoldani.

Útvonal

Fórumok  »  Szoftverfejlesztés  »  Visual Basic
Copyright © 2000-2017 PROHARDVER Informatikai Kft.