- Szünetmentes tápegységek (UPS)
- Melyik tápegységet vegyem?
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Bluetooth hangszórók
- Fujifilm X
- NVIDIA GeForce RTX 3080 / 3090 / Ti (GA102)
- Apple asztali gépek
- Teljesen az AI-ra fókuszál az új AMD Instinct sorozat
- Sony MILC fényképezőgépcsalád
- Milyen asztali (teljes vagy fél-) gépet vegyek?
Új hozzászólás Aktív témák
-
vilag
tag
válasz
martonx #1998 üzenetére
Akkor megpróbálom kicsit részletesebben.
Van egy programom amiben a VBAProject jelszóval van ellátva, azért, hogy ha a program egy le nem kezelt hibára fut, akkor se tudjanak belépni Debug módba, nehogy szétbarmoljanak ott nekem valamit. Úgy sincs senkinek lövése hozzá.
A program jelenleg úgy van megírva, hogy ha elindítja az xls-t, akkor egyből userform jön fel, és a munkafüzet láthatatlanná válik. Ezen a UserFormon van egy gomba, ami arra hivatott, hogy Unloadolja a Formot, és így elérhető lesz a Basic. (Ennek a gombnak a megnyomása jelszót kér, a biztonság kedvéért.
A jelen helyzetben, így kétszer kell jelszót megadnom.
Azt szeretném megoldani, hogy ha már a gomb megnyomásakor jelszót kell megadni, akkor ez oldja fel a VBAProjectet is.
Makrórögzítéssel próbáltam, de semmit sem vette fel.A 2.-al kapcsolatban volt néhány teóriám, hogy hogyan lehetne megoldani.
-egy másik fájl tárolná ezeket a változtatható dolgokat
-personal xls-ben tárolnám ezeket (azonban ebben az esetben ha a felhasználó másik géphez ül, akkor nem megoldás)
-környezeti változó létrehozása (a probléma ugyan az mint az előbb) -
sztanozs
veterán
Az elsőt simán meg lehet oldani, csak a kódból ki kell kapcsolni a védelmet.
A második is megoldható viszonylag egyszerűen - viszont le kell lőni hozzá a futó programot, változtatni a fájlrendszeri jogait, majd újra megnyitni. Ehhez indítani kell egy másik folyamatot (akár egy batch fájlt akár egy vbszkriptet) amelyik ezt megcsinálja.
-
vilag
tag
Üdv!
Több -egymással nem feltétlenül összefüggő- kérdés is felmerült bennem.
1. Programkódból fel lehet-e oldani a VBAProject védelmet?
Erre azért van szükség, mert ha esetleg valahol le nem kezelt hibára fut a program, akkor sem szeretném ha a programkódhoz (ha csak véletlenül is), de hozzáférnének, ezért eredetileg jelszóval van védve a Project. Van azonban egy gomb, amelynek megnyomása után a program jelszót kér, ezzel szeretném majd feloldani a VBAProject kódot ha megoldható.
2. Egy fájl írásvédett tulajdonságát le lehet-e venni, illetve vissza lehet e állítani programkódból (ráadásul azét a fájlét, amely a programot tartalmazza)? Sejtem a választ, de azért hátha...
Erre azért lenne szükség, mert eljutott odáig a program, hogy az eddigiekkel szemben szeretnék néhány a felhasználók által megadott/megválaszolt információt eltárolni a programon belül. Ha ez nem megy, akkor marad a külön fájlban, vagy környezeti változóban (esetleg a personal.xls-ben) való tárolás. Vagy esetleg valami egyéb ötlet?
Előre is köszönöm a közreműködést.
-
Sziasztok!
Az egyetemen van programozásom és Visual Studio-ban toljuk, de nem voltam bent a múlt héten előadáson, mert beteg voltam. Eközben a tanár adott házi feladatot. A másik nagy probléma, hogy szerbül tanulok (Ekonomski Fakultet Subotica) és elég gyatrán megy...
Console application-nal dolgozunk (ezt így kell írni?) és a következő a házi feladat:
1.) Írj egy programot, amely fogad 7 számot a felhasználótól és kiírja a számok összegét, amelyek nagyobbak 10-nél.
2.) Írj egy programot, amely fogad 5 számot a felhasználótól és kiírja a legkisebbet.
3.) Írj egy programot, amely fogad 5 számot a felhasználótól és kiírja hányszor vitt be a felhasználó páros számot.
A fordítás kicsit fura, de máshogy nem tudtam. Valaki "megcsinálná" helyettem? Nem tudom mekkora bonyolultságú a dolog, de plusz pontokat jelent én pedig nem tudom megoldani...
Előre is köszönöm a segítséget.
-
martonx
veterán
válasz
martonx #1984 üzenetére
Nézz be a C# topikba, de biztosan van java topik is.
Ha van internet elérésetek, vagy nem idegenkedtek egy webszerver telepítéstől (mondjuk IIS esetében ez pár kattintás), akkor erősen javallanám a webes vékonyklienses világot. Van ehhez is javascript, css, meg mindenféle topik. És a tudásod is teljesen naprakész lenne. -
vilag
tag
válasz
martonx #1984 üzenetére
Ezzel nem is lenne baj, szívesen áttérek valami másra, de ahhoz kéne valaki aki tud is nekem segíteni és bevezet az új nyelv rejtelmeibe.
Eredetileg is azért lett a VBA, mert én semmilyen programozási nyelvet nem ismertem, a kollégám viszont ebben egész jó volt már akkor is amikor nekem igényem támadt bizonyos folyamatok programozására.Tudsz esetleg valakit aki segítene belemászni egy másik programozási nyelvbe?
Üdv, vilag
-
vilag
tag
válasz
martonx #1981 üzenetére
A másik baj pedig az, hogy csak egyszer fut le én pedig azt szeretném elérni, hogy ugyan úgy működjön mint az a gomb amivel lenyitom. Első kattintásra lenyílik, ha még egyszer kattintok akkor pedig összecsukódik.
A ComboBox1_Click() pedig sajnos nem erre való, mert csak akkor fut le amikor az értéklistából kattintok valamelyik sorra.
-
vilag
tag
válasz
martonx #1981 üzenetére
Először is köszönöm a segítséget!
Most jön a DE (mert ugye mindig van egy de).
Nem működik egészen flottul a dolog.
Úgy tűnik a Framek (mint már oly sokszor) galibát okoznak.Ha egy nem aktív Framen belül lévő vezérlőre kattintok rá, akkor elsőre nem működik a dolog.
Erre valami ötlet?
-
sztanozs
veterán
Itt egy példa rá: [link]
-
urge82
csendes tag
Hali!
Egy amatőr kérésem lenne.
Egy olyan vbs script kellene nekem, ami elindítja xy programot a háttérben, és vele együtt egy üzenetablak is fusson gombok nélkül. XY program lefutása után az ablak is záródjon be. Köszönöm! -
vilag
tag
Üdv!
Egy meglehetősen amatőrnek tűnő kérdésem lenne.
El lehet valahogyan érni, hogy pl. egy Combobox ne csak akkor nyíljon le ha a kis háromszögre mutatok, hanem akkor is ha bárhová a vezérlőre kattintok?Köszönöm!
-
Homer
tag
válasz
martonx #1966 üzenetére
Meggyőzlek!
1.: Azért mert nem itthoni gépre kell fejleszteni! Adott a környezet amiben dolgozni kell.
2.: Kicsit olyan mintha neked azt mondanám, hogy programozó létedre magadnak cseréled ki a dugattyúgyűrűt a trabantodban. Attól, hogy az autószerelés nem a szakmád még érdekelhet a dolog. És amikor azt mondod, hogy van már sokkal jobb is (vb.net helyett akármi), igazat adok neked! Tényleg van már sokkal jobb autó is mint a trabi, de a lehetőség adott. Hiába írnék a Porsche topicba...Arra a mondatra, hogy az adatbázisba csak berakom, a formokon meg kezelem..., pont ez az! Az adatbázisban (értsd adatkészletben) vannak az adatok amikből a választólistát kellene feltölteni. Ezért kellene átadni a listát a form2-nek.
És akkor egy kis on topic is!
Ha már C, akkor ott, hogy csinálnád? -
martonx
veterán
válasz
DerStauner #1965 üzenetére
Először is visszakérdeznék, hogy miért kell asztali alkalmazás?
Aztán ha megtudnak győzni,hogy ehhez tényleg asztali alkalmazás kell, és windows 8-ról beszélünk (netalán), akkor html5+js-el.
És ha tényleg asztali alkalmazás kell, de windows 8 nem játszik, akkor utolsó lehetőségként wpf-el csinálnám MVVM design pattern-nel C# code-behind-al.Tudom ez itt egy VB.Net topik, nekem a kedvenc nyelvem a VB, de a konkrét kérdésedre, akkor is a fentieket tanácsolnám.
-
martonx
veterán
Ja és még pár adalék a hsz-edhez. Jó dolog, hogy önképzed magad, ezért is szólok, hogy a winforms, meg úgy általában minden vastag kliens-es megoldás, mára kiment a divatból. Ahogy ezt már írtam, azért nem találasz a témához rendes tutorialokat, mert jó pár éve nem fejleszt winforms-ban senki, hacsak nem muszáj neki (mondjuk speciális perifériák kezelése miatt). Épp a zárójeles rész miatt meghalni soha nem fog a winforms (bár én akkor is inkább wpf-ben gondolkoznék így 2013-ban), de a supportja mára tényleg pusztán névleges.
Ha tanulni akarsz, és bejön az MS vonal, és ebben szeretnél elhelyezkedni, akkor válts ASP.NET-re (webforms, mvc, webpages).Ugyanez a helyzet a VB.NET-tel. Válts C#-ra helyette.
És hidd el vagyunk itt páran, akik csináltunk pár vastag klienses programot, én pl. 2009-ig.
-
martonx
veterán
Pedig szerintem jól értettelek. Valamit nagyon elbonyolítasz. Form2-n akarod az új adatokat felvenni. Hát vedd fel, mentsd le és kész!
Mi a probléma? Még mindig nem értem, miért Form1-ről vársz ehhez adatokat, és miért akarsz bármit is visszaadni neki? Ne adatsorokat akarjál ide oda adogatni, azért van az adatbázis, hogy elmentsd bele az adatokat. Illetve azért van a datasource, hogy abban mókoljál mindkét formmal. -
Homer
tag
válasz
martonx #1961 üzenetére
Nem!
Akkor még egyszer!
A három tábla tehát:
1. Egy összegző (fordító) tábla, mely tartalmaz egy rendszám oszlopot, egy típuskód oszlopot, és egy színkód oszlopot
2. Egy Típus tábla, mely tartlamaz egy típuskód, és egy típus(szöveg) oszlopot
3. Egy Szín tábla, mely tartalmaz egy színkód oszlopot és egy szín(szöveg) mezőt(Nem tudtam rendesen formázni a PH-n a táblákat korábbi levelemben mert csak egy szóközt enged..., talán ezért volt félreérthető.)
A táblák közti kapcsolatok beállítva.
Típus tábla elsődleges kulcsa a típuskód mező, mely idegen kulcs a fordító táblában.
Szín táblában a színkód elsődleges kulcs, és ez is idegen kulcs a a fordító táblában.Szóval, a nyitóformon megjelenik az öszes rekord. (Nyilván nem a színkóddal és a típuskóddal, hanem a szín és a típus szöveggel, ergo sima adatkötéssel nem tudom ezt megoldani (legalábbis eddigi tudásom szerint), de nem is ez most a kérdés.)
Szal eddig okés.
Nah, és itt és most, szeretnék egy új ablakot nyitni az új adatok felviteléhez.
Az új ablakban lenne mondjuk egy textbox a rendszám beírásához, és két combobox a szín és a típus kiválasztásához.
A comboboxoknál a displaymember tulajdonságát a szöveges mezőkre, datamember tulajdonságát a kulcs oszlopra állítva tudom állítgatni a dolgokat, és egy adatsort visszaadva a főformnak, már hozzá is adható az új sor a fordítótáblához.Valami ilyesmit szeretnék csinálni, és ehhez szeretnék találni forráskódot, amit vizsgálgatni tudnék, hogy hogy szokás az ilyen "problémákat megoldani".
Valójában amit itt írtam az nem a valós probléma, amit meg kellene oldani, de nem is várom el, hogy azt megoldjátok helyettem. A konkrét feladatom megoldásához vagy 5-6 táblát kellene átadogatnom a formok közt. Ezért vannak kételyeim, hogy szerencsés-e az a megoldás, ha átadom (akár) az egész adatkészletet (adot esetben akár 99 másik formnak is?), vagy egy profi programban inkább egy megosztott készletet használnának. Referenciaként adják át, így nem többszöröződik a memóriában az adatkészlet? Esetleg csak az 5-6 táblát adják át ilyenkor? Ez pedig ennyi paramétert követelne a 2. form konstruktorában...Összegezve: ezért lennék kíváncsi egy olyan valaki hozzászólására aki "látott már ilyet".
-
martonx
veterán
Azt nem értem miért akarsz te bármilyen adatot átadni form1-ről form2-nek? Nem pont from2-n veszed fel az adatokat, és adod vissza form1-nek? És mindez persze csak képletesen szólva, miel valójában a DB-be kell visszajuttatndo az új adatokat, majd ha már ott vannak form1-en csak frissíteni kell a grid-et.
Szerintem te valamit nagyon túlbonyolítottál.
Manapság már nem triviális winforms tutorialokat találni, mivel alig fejleszt bárki winforms-t. Bár szerintem az MS How do I sorozat több éves videói biztosan megtalálhatóak még valahol. -
Homer
tag
Hogy érthetőbb legyek:
Tábla 1:
Autó színe Rendszám Típus
1 AAA-000 2
2 BBB-000 1Tábla 2:
Színkód Szín
1 Piros
2 ZöldTábla 3:
Tíuskód: Típus:
1 Trabant
2 FerrariMind a 3 tábla egy adatkészletben van a form1-en. A táblák közti kapcsolatok beállítva.
Ez a form, teszem azt, az adatok táblázatos megjelenítésére való, egy datagriddel, amely kötve van a Tábla 1-hez, és van rajta egy nyomógomb ezzel a felirattal:"Új rekord felvitele"Most nyitok egy új formot (form2)
A form2-n van egy textbox a rendszám beírásához, meg két combobox melyből egyik a szín bevitelére másik a típus bevitelére szolgál. Ha itt okét nyomok akkor kellene a form1-nek visszaadni az értéket.
Ilyenkor hogy szokás átadni az adatokat form1-ről form2-re?
v1: Form2-n új adattáblákat csináljak és feltöltsem a form 1 táblák adataival?
v2: Dataview-ok használatával?
v3: Csak String-ekkel töltsem fel a listboxokat, aztán a kiválasztott értéket keressem vissza a main adatkészlet megfelelő táblájában? -
Homer
tag
Linkeljetek már légyszi egy olyan oldalt, ahol arra találok példát, hogy hogyan szokás azt megoldani, hogy egy feltöltött adatkészlethez (több táblával pl. form1-en vagy megosztva), egy másik formról, pl. form2-ről kérnek be olyan adatokat, melyeket szintén ezen adatkészletben tárolt adatok alapján lehet kiválasztani pl. különböző combobox-okból, (tehát ugyan azon adatkészlet más-más tábláiból), és az eredményt szintén ebben a táblában tárolják.
(Remélem érthető vagyok.)
Köszi! -
vilag
tag
válasz
sztanozs #1957 üzenetére
Sajnos egyik általad vázolt verzió sem áll fent.
A probléma akkor is szokott jelentkezni, ha ugyan erről a gépről csak A felhasználó nyitja meg a fájlt.
De ha jobban belegondolok, akkor a 2 verzió nagy ritkán előfordul, amikor én egy másik gépről nyitom meg ahol más van bejelentkezve.
Ezt kipróbálom.
-
sztanozs
veterán
Én úgy néztem, hogy az is probléma lehet, ha a következő scennário áll fenn:
1 lépés - A user egy olyan gépről nyitja meg az a táblát, ahol A és B user profil is fent van, mind a kettőben fel van töltve az XLA
2 lépés - elmentés után a B user egy olyan gépről nyitja meg az excel táblát, ahol az A user profilja nincs fentIlyenkor az első lépés utáni mentéskor az excelbe elmentődik az XLA teljes elérési útvonala, és amikor a másik gépen megnyitják és ott nem létezik az adott path, akkor az XLA-t kézzel újra be kell tölteni. Ennek kikerülésére a közösen használt XLA-kat érdemes olyan helyre tenni, ami minden gépen ugyanazon a path alatt van, pl.:
- AllUsers > Appdata > Microsoft > Excel > XLStart
- CommonProgramFiles > Microsoft Shared > Office* -
vilag
tag
válasz
martonx #1952 üzenetére
Üdv!
Azon, hogy nem tudsz követni nem csodálkozom, mert néha már én magamat sem tudom.
Ez azonban nem véletlen, mert több különböző projekten is dolgozom, így a feltett kérdéseim nem feltétlenül egy problémakörben vannak. Gyakran pedig nincs is időm foglalkozni a projektekkel az egyéb más sürgős munkák mellett.A fenti probléma egyébkét azért merült fel, mert megpróbálom az adatbázis minél dinamikusabbá tenni, hogy ha az adatstruktúrán változtatni kell, akkor ez ne okozzon komolyabb fennakadásokat, mert korábbi munkákban ez igen nagy gondot jelent.
-
vilag
tag
válasz
sztanozs #1942 üzenetére
Üdv!
Úgy tűnik nálunk nem ez a hiba. A hivatkozás nem éri el az 1024 karaktert amiről a cikkben írnak.
A hiba pedig nem állandó jelenség, hanem ad-hoc jelleggel fordul elő.
Eddig nem sikerült a szabályosságot felfedezni, ami ezt okozza, így továbbra is homályban tapogatózom.Minden esetre köszönöm a linket, az ott leírtak is tanúlságosak.
Üdv, vilag
-
martonx
veterán
Bevallom egy ideje nem tudlak követni. Mindenesetre egy ilyet találtam neten, hátha segít:
Function ConvertToLetter(iCol As Integer) As String
'-----------------------------------------------------------------------------
' Procedure : ConvertToLetter
' Author : Niall - Zypher.co.uk
' Purpose : Convert a number to a column letter
' Tested to 256 columns, assumed to work until 702 (ZZ)
'-----------------------------------------------------------------------------
'
If iCol <= 26 Then
' Columns A-Z
ConvertToLetter = Chr(iCol + 64)
Else
ConvertToLetter = Chr(Int((iCol - 1) / 26) + 64) & _
Chr(((iCol - 1) Mod 26) + 65)
End If
End Function -
vilag
tag
Üdv!
VBA-ban szeretnék bizonyos rowsource tulajdonságot állítani változók segítségével.
A probléma az, hogy az oszlopoknak és a soroknak csak a számát ismerem és sehogyan sem sikerült r1c1 típusú hivatkozással megoldani a dolgot.Jelenleg egy ilyen félmegoldásom van:
szektorkod = Application.WorksheetFunction.Match("Szektorkód", ThisWorkbook.Sheets("Napló").Range("1:1"), 0)
szektornev = Application.WorksheetFunction.Match("Szektornév", ThisWorkbook.Sheets("Napló").Range("1:1"), 0)szektorkodvege = ThisWorkbook.Worksheets("Napló").Columns(szektorkod).End(xlDown).Row
x = Cells(2, szektorkod).Address
y = Cells(szektorkodvege, szektornev).Address
ComboBox27.RowSource = "Napló!" + x + ":" + yAz alsó 4 sort szeretném lerövidíteni max 2 sorra a vezérlők nagy száma miatt.
A legjobb megoldás talán az volna, ha sikerülne az oszlopok számát valahogyan visszaalakítani betűre, mert úgy a változókból egyszerűen össze tudnám rakni a rowsource-ot vagy a match eredményét valahogyan úgy megkapni, hogy az ne r1c1 típusú hivatkozás legyen.
Előre is köszönöm a segítséget!
-
EkSYS
senior tag
Köszönöm . Vb.netben meg nem próbáltam.
-
Homer
tag
Pl. vb.NET-ben:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
x = InputBox("Add meg a textboxok számát", "Program", 1)
For i As Integer = 0 To x - 1
Dim teksztboksz As New TextBox
teksztboksz.Location = New Point(10, 5 + i * 20)
Me.Controls.Add(teksztboksz)
Next
End SubPrivate Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim hanyadik As Integer = 0
For Each elem As Object In Me.Controls
If TypeOf elem Is TextBox Then
hanyadik += 1
If elem.text <> "" Then
MsgBox("A(z) " & hanyadik & ". textbox tartalma: " & elem.text)
End If
End If
Next
End Sub -
EkSYS
senior tag
Sziasztok!
Olyat hogy lehet csinálni hogy egy userformon lévő textboxon keresztül a user megad egy számot (1-től 10-ig) majd ennek megfelelően a program létrehozza a megadott számú textboxot ugyanezen a formon (vagy akár újon) és hogy lehet dolgozni /azonosítani ezeket a textboxot hogy ezeknek az értékeit tudjam használni?
köszi
b -
vilag
tag
Volna nekem egy más jellegű kérdésem is.
A kollégám írt egy Microsoft Office Excel bővítményt, mely arra hivatott, hogy függvényként használva a hivatkozott cellában lévő számot szöveggé alakítja (pl.: 635 -> hatszázharmincöt).
Ezt a bővítményt a következő módon adtuk hozzá az excelhez:
Eszközök/Bővítménykezelő.../
Saját függvények -> pipa
Tallózás
Betallózom a fájlt és készA bővítmény, így már függvényként használható (pl.: a "b1" cellába beírom a következőt =szamszov(a1)).
A probléma az, hogy időnként ezt a betallózást újra meg kell csinálni, mert egyszerűen nem hajlandó az átalakítást elvégezni. Arra még nem sikerült rájönni, hogy ennek mi az oka.
Azonban ezekben az esetekben a (példát követve) a "b1" cellába beírt "=szabszov(a1)" képlet helyett, az van ott, hogy "='C:\Documents and Settings\[felhasználónév]\Application Data\Microsoft\Bővítmények\sajatfuggvenyek.xla'!szamszov(a1)a "b1" cellában pedig ez jelenik meg a szöveg helyett:#NÉV?
Van valakinek ötlete, hogy ez miért következik be időnként randomnak látszó módon?
Esetleg valami nincs megfelelően definiálva?
Tudna valaki ennek a meglehetősen idegesítő hibának a megszüntetésében? -
vilag
tag
válasz
sztanozs #1939 üzenetére
Elképzelhető, de nem tudom milyen gond okozhatja ezt.
Nekem egyszerűen be sem lép az újonnan megjelenő UserForm Userform_Activate () rutinba.
Nálam CheckBox1_Changeből indul a dolog, majd Userform_Initialize-el folytatódik, ahonnan teszünk egy kis kitérőt a TextBox1_Change-be, amikor is értéket vesz fel a TextBox1, onnan vissza a Userform_Initialize-be, majd vissza a CheckBox1_Change-be, aztán pedig itt a vége fuss el véle.
-
vilag
tag
válasz
sztanozs #1937 üzenetére
Üdv!
Megpróbáltam, de ez a Sub le sem fut
A UserForm_Initialize () után még lefut a TextBox1_Change(), majd visszatér a CheckBox1_Click ()-be és itt véget is ér a történet.
A vicces azonban az (amit eddig nem vettem észre), hogy a UserForm megjelenése után a textboxban van már érték (ez eddig is így volt) és ugyan fókuszba hozni nem tudom a textboxot, de backspace-el mégis ki lehet törölgetni azt ami benne van, írni viszont már nem tudok bele.
Más ötlet esetleg?
-
vilag
tag
Sziasztok!
Kis segítségre lenne szükségem.
Olyan problémába futottam bele VBA használata közben.
Egy UserFormon van egy CheckBox, ami ha true értéket kap, akkor UserFormX.Show paranccsal meghív egy másik UserFormot.
Az a probléma, hogy sehogyan sem tudom elérni, hogy ez utóbb megjelenő UserFormon levő TextBox legyen az aktív és abban villogjon a kurzor.A következőket próbáltam:
-a UserForm initializálás rutinjába írni a TextBoxX.Setfocus parancsot
-a TabOrderrel variálni,
-a másik UserFormon megírni a TextBoxX.SetFocus parancsot oda ahová visszatér
de semmi sem működött.Ötlet?
-
bir0sz
csendes tag
Sziasztok !
Van egy probléma, amire nem tudok megoldást: vbsciptet futtatok sheduled taskban.
A task nem fut le, ezt a hibát dobja :
"Task Scheduler did not launch task " X " because instance "{deacf9ec-eeef-420f-aca0-b0a458dd7667}" of the same task is already running."A script sem fut le, azaz hibát dob.
a wscript.exe -t hiába állítom le, ua.Szerintem a script fut még a háttérben.
-
sztanozs
veterán
Ugynaz - illetve pluszban még az change (vagy onchange?) eseményt (és esetleg az összes keydown vagy keyup eseményt) kell felülvágni, hogy a bevitt adatokat konvertálja számmá. Esetleg használhatsz masked control-t is, aminél asszem ezeket (formátum) be lehet állítani...
-
Draken
őstag
Sziasztok!
egy ismerősöm nevében írok, neki kellene egy kis segítség, annyit mondott, hogy szeretne egy checkoxot amibe van szöveg illetve button amivel a sor első betűje 5-el nagyobb betűméret és piros, illetve még valamilyen színkeveréses feladatot akar megcsinálni. Ezeket hogyan tudná kivitelezni? köszönöm!
-
emitter
őstag
Sziasztok,
Outlook 2010-ben szeretnék adott szóval kezdődő tárgyú beérkező emaileket más mappába áthelyezni. Erre (egyéni levélszűrő szabályra) 3 féle lehetőség van, ahogy olvastam, én a másodikat próbáltam. A gondom az, hogy bár lefut a kód, ki is írja a felugró ablakban, hogy "Moved", de nem helyezi át a levelet az Inboxból a "Tickets" nevű mappába.
Mi lehet a gond?A kódom az alábbi (a Microsoft Visual Basic for Applications-ban a ThisOutlookSession-ben van):
Option Explicit
Private WithEvents olInboxItems As Items
Private Sub Application_Startup()
Dim objNS As NameSpace
Set objNS = Application.Session
' instantiate objects declared WithEvents
Set olInboxItems = objNS.GetDefaultFolder(olFolderInbox).Items
Set objNS = Nothing
End Sub
Private Sub olInboxItems_ItemAdd(ByVal Item As Object)
On Error Resume Next
Dim objInboxFolder As Outlook.MAPIFolder
Dim objSentFolder As Outlook.MAPIFolder
Set objInboxFolder = Session.GetDefaultFolder(olFolderInbox)
Set objSentFolder = objInboxFolder.Parent.Folders("Tickets")
Dim strSubject As String
Dim strLeft8 As String
Dim strLeft12 As String
strSubject = Item.Subject
strLeft8 = Left(strSubject, 8)
strLeft12 = Left(strSubject, 12)
If strLeft8 = "[Ticket#" Or strLeft12 = "RE: [Ticket#" Or strLeft12 = "Re: [Ticket#" Then
Item.SaveSentMessageFolder objSentFolder
Item.Save
MsgBox ("Moved")
End If
Set objInboxFolder = Nothing
Set objSentFolder = Nothing
Set Item = Nothing
End Sub -
vilag
tag
válasz
martonx #1924 üzenetére
Tudom!
Emlékszem is rá, de (mert ugye mindig van egy "DE"...) jelenleg, hogy úgy mondjam hozott anyagból kell dolgoznom (persze azt is én írtam, nemi segítséggel), mert a meglévőt kell továbbfejlesztenem.
Sajnos az eddig is 8 órát kitevő munkaköröm mellé (amibe eddig azért belefért egy kis programozás is) egy távozó kollégám 8 órás munkakörét is ideadták (mondanom sem kell, hogy ugyan azért a bérért). Ennek következtében most 16 órányi munkát kell elvégeznem 8 órában, így sajnálatos módon örülök, hogy ha a toldozás-foldozásra jut időm.
Így új programozási nyelv megtanulásáról egyelőre nem is álmodhatok, sajnos...
Szerk.: melyik nyelvben is maradtunk, mert most kényszerszabadságra megyek egy időre (értsd: sok szabadság maradt, így most ki kell vegyem) és ha a sok bejgli evés mellett lesz kedvem, akkor lehet, hogy nekiesek.
-
martonx
veterán
-
vilag
tag
Félmegoldást már találtam a problémára.
Ha magát a munkalapot másolom, akkor a rajta lévő vezérlők és a hozzájuk tartozó kódok is mennek.
Sheets("Munka1").Copy After:=Sheets(1)
Ezzel viszont az a baj, hogy a 255 karakternél többet tartalmazó cellákat szépen lecsonkolja.
Ezt követően megpróbálkoztam azzal, hogy a munkalapon lévő adatokat másolom és irányított beillesztéssel (értékként) az új munkalapra másolom. Ennek viszont az a baja, hogy az egyesített celláknak azonos méretűnek kell lennie.
A vicc csak az, hogy azonos méretűek.Erre esetleg valami megoldás?
Üdv, vilag
-
vilag
tag
Üdv!
Az lenne a kérdésem, hogy egy teljesen új munkafüzetbe hogyan lehet egy gombot, illetve egy hozzá tartozó kódot átvinni?
Egy jelenlegi kódrészletemnek az a feladata, hogy egy munkalapot (amint elvégeztetem a különböző számításokat ésatöbbi) másoljon, hozzon létre egy új munkafüzetet, oda pedig illessze be irányított beillesztéssel az értékeket.
Innen akarok továbblépni abba az irányba, hogy a létrehozott új munkafüzet adott munkalapján kellene nekem egy gombot létrehozni, ami végrehajtja a hozzá tartozó parancssort.
Előre is köszönöm a segítséget!
Üdv, vilag
-
martonx
veterán
válasz
VANESSZA1 #1917 üzenetére
Alakul ez. Mint mondtam valamilyen adatbázis elérési hiba, esetleg odbc driver hiány lehet. Olyan részletek érdekelnek, hogy pl. mikor dobja ezt a hibát? Rögtön megnyitáskor, vagy valamilyen funkció megnyitásakor?
Mennyire bonyolult ez az Access db? Vannak benne belinkelt külső adatforrások? Van benne makró, és lehet az dobja a hibát? -
-
Bobrooney
senior tag
És skacok, rendesen Visual Basicben, azt hogy tudom megcsinálni, hogy egy TextBox-ba kiírom a form futási idejét? Mindig vizsgálom az eltelt időt?
-
sztanozs
veterán
válasz
Bobrooney #1903 üzenetére
callbyname azért nem működik, mert pont a másik irányból közelíti meg a kérdést, mint amit te szeretnél:
Nem egy függvényt vált ki (mint egy eseménykezelő), hanem egy már megírt függvényt lehet vele meghívni úgy, hogy nem a függvényt hívod meg közvetlenül, hanem átadod a környezetnek a függvény nevét és az argumentumokat és hagyod, hogy a futtatókörnyezet megkeresse neked. De ehhez fontos, hogy a függvények már készen legyenek. Nálad meg ugye az volna a lényeg, hogy a függvényeket ne kelljen megírni negyvenszer... -
sztanozs
veterán
válasz
martonx #1900 üzenetére
Pl számológép? De akár egy gány módon elkészített form kitöltő program is lehet.
Bobrooney: ez annyira elüt a valós VBA felhasználástól, hogy ezen nem gyakorolni fogsz, hanem szívni... Az Excel VBA arra van, hogy a worksheetjeidet és az azokon található adatokat manipuláljad. Azt ajánlom, inkább ilyen feladatokat találj ki magadnak.
Új hozzászólás Aktív témák
Hirdetés
- iGO Primo
- bambano: Bambanő háza tája
- Android alkalmazások - szoftver kibeszélő topik
- Szünetmentes tápegységek (UPS)
- Futás, futópályák
- zebra_hun: Hűthető e kulturáltan a Raptor Lake léghűtővel a kánikulában?
- Hónap végén érkezik a Xiaomi Band 10, ára is van
- sziku69: Szólánc.
- Google Pixel 9a - a lapos munka
- CASIO órák kedvelők topicja!
- További aktív témák...
- BESZÁMÍTÁS! ASUS Z390 i5 9500 16GB DDR4 512GB SSD RTX 2060 Super 8GB Rampage SHIVA Thermaltake 500W
- BESZÁMÍTÁS! MSI B450 TomaHawk R5 5600X 32GB DDR4 512GB SSD RTX 3060 XC 12GB Rampage SHIVA 600W
- BESZÁMÍTÁS! Asus TUF B450M R5 5600X 32GB DDR4 512GB SSD RTX 3060 XC 12GB Rampage SHIVA Chieftec 600W
- Xbox Series X, dobozában, kitisztítva+újrapasztázva, 6 hó teljeskörű gar., Bp-i üzletből eladó!
- KEF R7 META Hangfal eladó
- BESZÁMÍTÁS! Sony PlayStation4 PRO 1TB fekete konzol extra játékokkal garanciával hibátlan működéssel
- Giant Talon 0 Sport - Hardtail Mountain Bike
- Dymo LabelWriter 400 - Hőpapíros címkenyomtató
- Crucial 240GB SSD eladó
- 122 - Lenovo Legion Pro 5 (16ARX8) - AMD Ryzen 7 7745HX, RTX 4070 (48 hónap garancia!)
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest