- Projektor topic
- Milyen videókártyát?
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Fejhallgató erősítő és DAC topik
- A Linux megnégyszerezte magát a Steamen — a Microsoft ismét ígérget
- AMD vs. INTEL vs. NVIDIA
- Először kombinálja a Full HD-t az 1000 Hz-cel egy monitor
- AMD Navi Radeon™ RX 9xxx sorozat
- Speciális kiadású AMD-s alaplapot villantott az ASUS a 20 éves ROG-jubileumra
- Apple MacBook
-
Fórumok
PROHARDVER! - 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! BlogokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokLOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendFÁ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
-
Fire/SOUL/CD
félisten
Közben eszembe jutott egy egyszerű (remélhetőleg AutoCAD VBA-ban is működő) megoldás. Szóval mi lenne, ha egy Excel objektumot hoznánk létre és annak használnánk a függvényeit, pl. a GetOpenFilename függvényt.

Próbáld ki, hátha műxik...Sub FireAutoCADFileOpenDialog()
Dim MyExcelApp As Object
Dim MyFilePath As String
Set MyExcelApp = CreateObject("Excel.Application")
MyFilePath = MyExcelApp.GetOpenFilename(Title:="Válassz egy fájlt", _
FileFilter:="AutoCAD DVB Files (*.dvb),*.dvb")
If MyFilePath <> "False" Then MsgBox "A kiválasztott fájl: " & MyFilePath
Set MyExcelApp = Nothing
End Sub -
Fire/SOUL/CD
félisten
Bocs, nincs sok időm jelenleg (még mindig) PH-ra...
Utánaolvastam, olybá tűnik, hogy 2 megoldás lehet
1. .NET plugin írásával, akkor beépített funkciók érhetőek el
(Ez sem okoz gondot (mármint .NET plugin-t írnom, csak ahhoz viszont fel kell pattintanom mindenképp egy AutoCAD-t, talán hétvégén megsasolom)2. Hagyományos Winapi függvények használatával, sajna ez összetettebb mutatvány, több infó szükségeltetik hozzá (csomó paramétert és változót kell ismerni stb)
Ez utóbbit megmutatom hogyan kell elkövetni (x64-re/hez van deklarálva a fileopendialog import stb), ez univerzális kód -bár nem próbáltam AutoCAD-ben, mert nincs fent- ezért mennie kell 100%-ban, bármely VBA-ban is legyen.
A kód megnyitja a fájlablakot, szűrőt használ (DVB fájlokat listázza csak(rákerestem a neten, az újabb CAD-k ilyen kiterjesztéssel mentik a VBA kódot, ha meg esetleg mégsem, akkor a forrásban írd át a *.DVB-t *.*-ra, akkor minden fájl látszódni fog), ha egy ilyen fájlt kijelölsz, akkor kiírja a teljes útvonalával együtt, ha meg bezárod az ablakot, akkor meg, hogy nem jelöltél ki semmit... Szóval most ennyi fért az időmbe, ha lesz időm hétvégén folyt. köv.Option Explicit
Private Declare PtrSafe Function GetOpenFileName Lib "comdlg32.dll" Alias _
"GetOpenFileNameA" (MYOPENFILENAME As OPENFILENAME) As Long
Private Type OPENFILENAME
lStructSize As Long
hwndOwner As LongPtr
hInstance As LongPtr
lpstrFilter As String
lpstrCustomFilter As String
nMaxCustFilter As Long
nFilterIndex As Long
lpstrFile As String
nMaxFile As Long
lpstrFileTitle As String
nMaxFileTitle As Long
lpstrInitialDir As String
lpstrTitle As String
flags As Long
nFileOffset As Integer
nFileExtension As Integer
lpstrDefExt As String
lCustData As LongPtr
lpfnHook As LongPtr
lpTemplateName As String
End Type
Sub GetFileWithFullPath()
Dim MyOpenFile As OPENFILENAME
Dim MyResult As Long
With MyOpenFile
'kezdő drive/folder
.lpstrInitialDir = "D:\"
'fájlablak fejléce
.lpstrTitle = "Fire/SOUL/CD"
'fájlablak szűrő
.lpstrFilter = "AutoCAD VBA" & Chr$(0) & "*.dvb" & Chr$(0)
'default flag beállítás
.flags = 0
.nFilterIndex = 1
.hwndOwner = 0
.lpstrFile = String(257, 0)
.nMaxFile = LenB(.lpstrFile) - 1
.lStructSize = LenB(MyOpenFile)
.lpstrFileTitle = .lpstrFile
.nMaxFileTitle = .nMaxFile
End With
MyResult = GetOpenFileName(MyOpenFile)
If MyResult = 0 Then
MsgBox ("Nem választottál ki fájlt!")
Else
MsgBox (Trim(Left(MyOpenFile.lpstrFile, InStr(1, MyOpenFile.lpstrFile, vbNullChar) - 1)))
End If
End Sub -
Mzmatus
csendes tag
-
Bobrooney
senior tag
Kedves "Fire/SOUL/CD" !
Nagyon köszönöm, hogy foglalkoztál a kérésemmel.
Megpróbáltam használni a leírtakat, de az Application.FileDialog... nem ismert számára.
Hasonlót találtam, (Application.Preferences.OpenSave) de ez egy másfajta dialógus ablak megnyítására használatos. (egy figyelmeztetés megjelenítése - true/False )
Egyébként ezen az oldalon vannak az Autocad VBA-val kapcsolatos dolgok, objektumok, eseménykezelések, eljárások, tulajdonságok, stb.. Folyamatosan keresgélek benne, de eddig még nem találtam meg a választ.
https://help.autodesk.com/view/OARX/2023/ENU/
Ha esetleg szánnál rá pár percet, megköszönném. Hátha azonnal rátalálsz.
Eddigi segítségedet is köszönöm.
Üdv, ZoltánMinden kritikát és bántást mellőzve! Bármelyik AI nem adna hamarabb választ a problémádra?
-
Mzmatus
csendes tag
Nem tudom, hogy az AutoCAd VBA mennyire tér el úgy általában a "sima" VBA-tól, de ezzel tehetsz egy próbát (itt egy commandbutton kattintásra lefutó VBA kódot adok, de nem az a lényeg, hanem ami a SUB-n belül van)
Private Sub CommandButton1_Click()
Dim MyFileDialog As Object
'Itt 4 paraméter lehet (msoFileDialogFilePicker, msoFileDialogFolderPicker, msoFileDialogOpen, msoFileDialogSaveAs)
Set MyFileDialog = Application.FileDialog(msoFileDialogOpen)
MyFileDialog.Show
End SubKedves "Fire/SOUL/CD" !
Nagyon köszönöm, hogy foglalkoztál a kérésemmel.
Megpróbáltam használni a leírtakat, de az Application.FileDialog... nem ismert számára.
Hasonlót találtam, (Application.Preferences.OpenSave) de ez egy másfajta dialógus ablak megnyítására használatos. (egy figyelmeztetés megjelenítése - true/False )
Egyébként ezen az oldalon vannak az Autocad VBA-val kapcsolatos dolgok, objektumok, eseménykezelések, eljárások, tulajdonságok, stb.. Folyamatosan keresgélek benne, de eddig még nem találtam meg a választ.
https://help.autodesk.com/view/OARX/2023/ENU/
Ha esetleg szánnál rá pár percet, megköszönném. Hátha azonnal rátalálsz.
Eddigi segítségedet is köszönöm.
Üdv, Zoltán -
Fire/SOUL/CD
félisten
Nem tudom, hogy az AutoCAd VBA mennyire tér el úgy általában a "sima" VBA-tól, de ezzel tehetsz egy próbát (itt egy commandbutton kattintásra lefutó VBA kódot adok, de nem az a lényeg, hanem ami a SUB-n belül van)
Private Sub CommandButton1_Click()
Dim MyFileDialog As Object
'Itt 4 paraméter lehet (msoFileDialogFilePicker, msoFileDialogFolderPicker, msoFileDialogOpen, msoFileDialogSaveAs)
Set MyFileDialog = Application.FileDialog(msoFileDialogOpen)
MyFileDialog.Show
End Sub -
Mzmatus
csendes tag
-
sztanozs
veterán
-
Mzmatus
csendes tag
Sziasztok!
A windows fájlmegyitás dialógusablakát szeretném előhívni.
Régen, a vb6 -ban az FSO objektummal egyszerűen megoldható volt, de ez már nem működik.
Kérném a segítségeteket. Előre is köszönöm. -
sonar
addikt
Sziasztok,
visual studio 2022-ben (.NET8)
Egy consol applikációt kellene átalakítanom dll-é (class library-nak hívják ebben ahogy megtudtam).
Valahogy nem akadok rá a megfelelő tutorial-ra.
Tudna valaki segíteni? HOgy mire keressek rá? Mert a használt kulcsszavak se googli-ban se duckduck-ban nem hoztak jó eredményeket.
-
Vladek83
tag
Sziasztok,
vb.net-ben van egy alkalmazásom.
Webview2-ben nyílik meg egy Onedrive táblázat.
Amit szeretnék elérni:
A táblázat egyik cellájába klikkelek, akkor azt adja vissza egy TextBox-ba vagy még ami jobb lenne DataGridView-ben, ezekre nem találtam eddig megoldást..
Ha valakinek lenne ötlete/javaslata szívesen venném..Üdv,
-
Amiens
tag
Sziasztok,
kérném a segítségeteket!
Írtam egy makrót, de nem működik.
Szeretnék egy olyan programot, ami:
megnyitja a kijelölt grafikon adattábláját
megnyitja az Adat1 szerkesztését
változtatja meg az adatok értékei képletét eggyel nagyobb sorszámúra például így: =adatok_havi!$J$7:$AS$7 - ból legyen =adatok_havi!$J$8:$AS$8
az oszlop értéke maradjon az eredeti, csak a sor értéke legyen eggyel nagyobb.
aztán beleklikkel a diagramm címébe
és ott is eggyel nagyobb számra cseréli a sor számát.Sajnos, amit a makorrögzítéssel csinálok, az nem hozza az eredményt, illetve a chatgpt 3.5 is csupa olyan kódot generál, ami nem működik.
Tudom, hogy az Ember okosabb az AI-nél
Segítsetek, kérlek!


Szia!
Az adattartományt formázd táblázatba, gyorsabb és egyszerűbb; utána automatikus a grafikon vizualizációja is!Jobban jársz!
-
simongnxs
újonc
Sziasztok,
kérném a segítségeteket!
Írtam egy makrót, de nem működik.
Szeretnék egy olyan programot, ami:
megnyitja a kijelölt grafikon adattábláját
megnyitja az Adat1 szerkesztését
változtatja meg az adatok értékei képletét eggyel nagyobb sorszámúra például így: =adatok_havi!$J$7:$AS$7 - ból legyen =adatok_havi!$J$8:$AS$8
az oszlop értéke maradjon az eredeti, csak a sor értéke legyen eggyel nagyobb.
aztán beleklikkel a diagramm címébe
és ott is eggyel nagyobb számra cseréli a sor számát.Sajnos, amit a makorrögzítéssel csinálok, az nem hozza az eredményt, illetve a chatgpt 3.5 is csupa olyan kódot generál, ami nem működik.
Tudom, hogy az Ember okosabb az AI-nél
Segítsetek, kérlek!


-
Postas99
őstag
Beletettem ezt, de nem jelenik meg semmi, csak a várakozási idő
Set InfoShape = ws.Shapes.AddTextbox(Orientation:=1, Left:=100, Top:=100, Width:=200, Height:=50)
InfoShape.TextFrame.Characters.Text = "A keresett érték (" & SearchValue & ") megtalálva."
' Várakozás 2 másodpercig
Application.Wait (Now + TimeValue("0:00:02"))
' Alakzat törlése
InfoShape.DeleteA megoldás amit kerestél:
Sub MessageBoxTimer()
Dim AckTime As Integer, InfoBox As Object
Set InfoBox = CreateObject("WScript.Shell")
'Set the message box to close after 10 seconds
AckTime = 10
Select Case InfoBox.Popup("Click OK (this window closes automatically after 10 seconds).", _
AckTime, "This is your Message Box", 0)
Case 1, -1
Exit Sub
End Select
End Sub -
F1DO
senior tag
Beletettem ezt, de nem jelenik meg semmi, csak a várakozási idő
Set InfoShape = ws.Shapes.AddTextbox(Orientation:=1, Left:=100, Top:=100, Width:=200, Height:=50)
InfoShape.TextFrame.Characters.Text = "A keresett érték (" & SearchValue & ") megtalálva."
' Várakozás 2 másodpercig
Application.Wait (Now + TimeValue("0:00:02"))
' Alakzat törlése
InfoShape.Delete -
Delila_1
veterán
Sziasztok!
Excel VB kód - annyit tesz hogy vár egy keresési értéket - ehhez megnyilik egy beviteli mező. A keresési érték beadásakor indul a keresés, annyi kellene, hogy jelenítsen meg egy üzenetet 2 másodpercre ha megtalálta és akkor is ha nem .
messagebox-al, popup-al próbálkoztam, de mindig ott az OK gomb és ameddig arra nem nyomok rá nem lép tovább a kód.
MsgBox "A keresett érték (" & SearchValue & ") nem található, üres sorba felvétele megtörtént.", vbExclamation + vbSystemModal, "Keresés eredménye"
+ itt az adott VB kódrészlet végén ez a késleltetés is szerepel
Application.Wait (Now + TimeValue("0:00:02"))illetve:
CreateObject("WScript.Shell").PopUp "A keresett érték (" & SearchValue & ") nem található, üres sorba felvétele megtörtént.", 2
Megjelennek ezek révén az üzenetek, csak ott az OK gomb is ami nem kéne.
Msgbox helyett egy alakzatot jeleníts meg szöveggel, majd 2 mp után töröld.
-
F1DO
senior tag
Sziasztok!
Excel VB kód - annyit tesz hogy vár egy keresési értéket - ehhez megnyilik egy beviteli mező. A keresési érték beadásakor indul a keresés, annyi kellene, hogy jelenítsen meg egy üzenetet 2 másodpercre ha megtalálta és akkor is ha nem .
messagebox-al, popup-al próbálkoztam, de mindig ott az OK gomb és ameddig arra nem nyomok rá nem lép tovább a kód.
MsgBox "A keresett érték (" & SearchValue & ") nem található, üres sorba felvétele megtörtént.", vbExclamation + vbSystemModal, "Keresés eredménye"
+ itt az adott VB kódrészlet végén ez a késleltetés is szerepel
Application.Wait (Now + TimeValue("0:00:02"))illetve:
CreateObject("WScript.Shell").PopUp "A keresett érték (" & SearchValue & ") nem található, üres sorba felvétele megtörtént.", 2
Megjelennek ezek révén az üzenetek, csak ott az OK gomb is ami nem kéne.
-
Postas99
őstag
A gond azzal van, hogy nem az excel megnyitásra teszed be a combobox populate opciót, hanem a combobox.change opcióra.
Használd ezt:Sub Workbook_Open()'ide tedd a kododatDim i As LongIf Not Comb_Arrow ThenWith Me.ComboBox1.List = Worksheets("szerepkorok").Range("AL4", Worksheets("szerepkorok").Cells(Rows.Count, "AL").End(xlUp)).Value.ListRows = Application.WorksheetFunction.Min(6, .ListCount).DropDownIf Len(.Text) ThenFor i = .ListCount - 1 To 0 Step -1If InStr(1, .List(i), .Text, vbTextCompare) = 0 Then .RemoveItem iNext.DropDownEnd IfEnd WithEnd IfEnd Sub -
Postas99
őstag
Van egy excel táblázatom, amiben elhelyeztem egy Combox-ot. Amikor lenyitom a legördülő menüt üres a táblázat egészen addig, amíg egy karaktert nem írok be. Utána működik a találati lista szűrése.
Szeretném, ha a táblázat megnyitást követően a legördülő gombra kattintva látható legyen az AL oszlopban feltöltött szöveg listám, majd ezután gépelve szűkítse a találatokat. Ez hogy oldható meg?Kód:
Option ExplicitPrivate Comb_Arrow As BooleanPrivate Sub ComboBox1_Change()Dim i As LongIf Not Comb_Arrow ThenWith Me.ComboBox1.List = Worksheets("szerepkorok").Range("AL4", Worksheets("szerepkorok").Cells(Rows.Count, "AL").End(xlUp)).Value.ListRows = Application.WorksheetFunction.Min(6, .ListCount).DropDownIf Len(.Text) ThenFor i = .ListCount - 1 To 0 Step -1If InStr(1, .List(i), .Text, vbTextCompare) = 0 Then .RemoveItem iNext.DropDownEnd IfEnd WithEnd IfEnd SubPrivate Sub ComboBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)Comb_Arrow = (KeyCode = vbKeyUp) Or (KeyCode = vbKeyDown)If KeyCode = vbKeyReturn Then Me.ComboBox1.List = Worksheets("szerepkorok").Range _("AL4", Worksheets("szerepkorok").Cells(Rows.Count, "AL").End(xlUp)).ValueEnd SubSzia!
Csak egy combobox vagy FORM-on levő combobox?
-
Sátán44
addikt
Van egy excel táblázatom, amiben elhelyeztem egy Combox-ot. Amikor lenyitom a legördülő menüt üres a táblázat egészen addig, amíg egy karaktert nem írok be. Utána működik a találati lista szűrése.
Szeretném, ha a táblázat megnyitást követően a legördülő gombra kattintva látható legyen az AL oszlopban feltöltött szöveg listám, majd ezután gépelve szűkítse a találatokat. Ez hogy oldható meg?Kód:
Option ExplicitPrivate Comb_Arrow As BooleanPrivate Sub ComboBox1_Change()Dim i As LongIf Not Comb_Arrow ThenWith Me.ComboBox1.List = Worksheets("szerepkorok").Range("AL4", Worksheets("szerepkorok").Cells(Rows.Count, "AL").End(xlUp)).Value.ListRows = Application.WorksheetFunction.Min(6, .ListCount).DropDownIf Len(.Text) ThenFor i = .ListCount - 1 To 0 Step -1If InStr(1, .List(i), .Text, vbTextCompare) = 0 Then .RemoveItem iNext.DropDownEnd IfEnd WithEnd IfEnd SubPrivate Sub ComboBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)Comb_Arrow = (KeyCode = vbKeyUp) Or (KeyCode = vbKeyDown)If KeyCode = vbKeyReturn Then Me.ComboBox1.List = Worksheets("szerepkorok").Range _("AL4", Worksheets("szerepkorok").Cells(Rows.Count, "AL").End(xlUp)).ValueEnd Sub -
sztanozs
veterán
Sziasztok,
Nem tudom tud e vki segíteni nekem. Lenne egy megoldandóm, viszont sem a VBA-hoz sem a makrokhoz nem értek, így csak reménykedni tudok, hogy lesz vkinek egy kész megoldása.
Köszönöm szépen előreEgy több lapból álló excel egyik lapfüléből (legyen ez védett 1) folyamatosan gyűjteni kellene, egy másik lapra automatikusan, hogy mikor, kicsoda, mit, miről, mire módosított. És nyilván ne lehessen kitörölni ezt a fület.
A védett 1 lapfül, ahol módosítani lehet és ezt követni is szeretnénk, ott bizonyos oszlopokba csak bizonyos személyek írhatnak, de ezt egyszerű excel megoldással meg lehetett csinálni.A worksheet_change eseményre kell feliratkozni és ott felvinni az eseményt egy új lapra...
-
Dian
újonc
Sziasztok,
Nem tudom tud e vki segíteni nekem. Lenne egy megoldandóm, viszont sem a VBA-hoz sem a makrokhoz nem értek, így csak reménykedni tudok, hogy lesz vkinek egy kész megoldása.
Köszönöm szépen előreEgy több lapból álló excel egyik lapfüléből (legyen ez védett 1) folyamatosan gyűjteni kellene, egy másik lapra automatikusan, hogy mikor, kicsoda, mit, miről, mire módosított. És nyilván ne lehessen kitörölni ezt a fület.
A védett 1 lapfül, ahol módosítani lehet és ezt követni is szeretnénk, ott bizonyos oszlopokba csak bizonyos személyek írhatnak, de ezt egyszerű excel megoldással meg lehetett csinálni. -
sztanozs
veterán
Sziasztok!
Esetleg valaki foglalkozott már VB6 alatt webkamera kezeléssel? Elavult dolog, az egyszer biztos, de sajnos a célgép ennyit tesz lehetővé.
Jelenleg az avicap32-vel működik a dolog, viszont a 640x480-as limit elég kevés, a kamera HD-t is tud.
A program maga annyi, hogy egy gomb megnyomására az éppen látható képből elment egyet egy adott helyre.
Olvastam, hogy DirectShow-val is meg lehetne oldani a dolgot, ha bárki tud valami érdemi dolgot hozzáfűzni, megköszönném.
-
bszilvagyi
csendes tag
Sziasztok!
Esetleg valaki foglalkozott már VB6 alatt webkamera kezeléssel? Elavult dolog, az egyszer biztos, de sajnos a célgép ennyit tesz lehetővé.
Jelenleg az avicap32-vel működik a dolog, viszont a 640x480-as limit elég kevés, a kamera HD-t is tud.
A program maga annyi, hogy egy gomb megnyomására az éppen látható képből elment egyet egy adott helyre.
Olvastam, hogy DirectShow-val is meg lehetne oldani a dolgot, ha bárki tud valami érdemi dolgot hozzáfűzni, megköszönném.
-
zakoss
tag
Sziasztok,
Abban szeretnék segítséget kérni, hogy van-e valakinek olyan működő scriptje ami outlookban a kijelölt levelek mellékletek,csatolmányait (.docx, .pdf) kinyomtatja ha meghívom a makrót hozzá.
Találtam hozzá oldalakat amiken kis átalakítást kellett hozzátenni, hogy működő legyen, viszont az alapértelmezett nyomtatóra nem küldi ki pl: Print Attachments on Selected Messages
Előre is köszi a segítsgéget.
-
Vladek83
tag
Szia,
ezt találtam, ez most működik:
Dim aNumber As Double = TextBox1.Text
TextBox1.Text = aNumber.ToString("n2")[köszönöm] kipróbálom
-
sztanozs
veterán
Ez csak két tizedesre formálja a kiíratást, ténylegesen nem kerekíti két tizedesre.
Szerintem:
TextBox1.Text = Format(Int(100*Val(TextBox1.Text))/100, "0.00") -
Vladek83
tag
Sziasztok!
a következő kód nem azt csinálja, amit szeretnék, 2 tizedesig kellene, hogy számoljon, de sajnos kerekít.:
TextBox1.Text = Format(Val(TextBox1.Text), "0.00")Turtam a netet, de eddig semmi..?
Üdv,
-
pmonitor
aktív tag
-
sztanozs
veterán
Ez milyen VB egyébként? VBA (Office), VB6 vagy VB.NET?
-
Diopapa
addikt
Köszi, hogy gondolkodtatok rajta, közben megoldottam. Public volt a változó, eddig ezzel nem volt gond ebben a formában csak most a BGW miatt. Most Public Shared lett és egyből átadta az egyik változó az értéket a másiknak.
Köszi mégegyszer.
-
sztanozs
veterán
-
pmonitor
aktív tag
-
sztanozs
veterán
Miért? A Form nem Control?
szerk.:
Valahogy így lehet ezt megcsinálni:Imports System.Threading
Public Class Form1
Public variable As Integer
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
BackgroundWorker1.RunWorkerAsync(Me)
Timer1.Start()
End Sub
Sub Update()
Text = variable
End Sub
Private Sub BackgroundWorker1_DoWork(sender As Object, e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
Dim frm As Form1 = e.Argument
For i = 1 To 100
If (frm.InvokeRequired) Then frm.Invoke(New MethodInvoker(AddressOf Update), Nothing)
Thread.Sleep(1000)
Next
End Sub
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
variable += 1
End Sub
End ClassIgen, de a Formnak nem a UI Thread által piszkált részében akar bármit is csinálni.
-
pmonitor
aktív tag
Nem egy kontrolhoz akar hozzáférni (amit amúgy kézzel lehet publikusnak is deklarálni, csak az IDE rakja alapból Private-ba) - ha elolvastad volna a kérdést -, hanem egy publikus változóhoz.
Amúgy tervezésileg tényleg katyvasz, hogy egy BGW egy másik formon levő függvényt használ, de egy változóhoz vagy függvényhez való hozzáférés nem gond.
Miért? A Form nem Control?
szerk.:
Valahogy így lehet ezt megcsinálni:Imports System.Threading
Public Class Form1
Public variable As Integer
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
BackgroundWorker1.RunWorkerAsync(Me)
Timer1.Start()
End Sub
Sub Update()
Text = variable
End Sub
Private Sub BackgroundWorker1_DoWork(sender As Object, e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
Dim frm As Form1 = e.Argument
For i = 1 To 100
If (frm.InvokeRequired) Then frm.Invoke(New MethodInvoker(AddressOf Update), Nothing)
Thread.Sleep(1000)
Next
End Sub
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
variable += 1
End Sub
End Class -
sztanozs
veterán
Ha egyik formból szeretnél hozzáférni egy másik form metódusához/változójához, az általában rossz program szerkezetre utal. Vb.Net-ben meg tudod oldani, hogy az ilyeneket modulban valósítod meg.
@sztanozs: Meg ha átadná, akkor sem fér hozzá egy control-hoz a DoWork()-ban. Csoda, hogy egyáltalán nem száll el a futásidőben.
Nem egy kontrolhoz akar hozzáférni (amit amúgy kézzel lehet publikusnak is deklarálni, csak az IDE rakja alapból Private-ba) - ha elolvastad volna a kérdést -, hanem egy publikus változóhoz.
Amúgy tervezésileg tényleg katyvasz, hogy egy BGW egy másik formon levő függvényt használ, de egy változóhoz vagy függvényhez való hozzáférés nem gond.
-
pmonitor
aktív tag
Sziasztok, egy kis segítség kellene... Van 2 formom, nevezzük az egyiket Egyesnek, a másikat Kettesnek. Az Egyes fő formon deklarálva van egy public változó. Erről a formról van meghívva egy backgroundworker. Ez a BGW a Kettes formon levő függvényt használ. Ezen a Kettes formon levő függvényben az Egyes formon levő public változó tartalmát "nothing"-nek látja. Ugyanezen függvény használata nem BGW-vel természetesen a változó valós értékét mutatja.
Mit rontok el? Válaszaitokat előre is köszönöm!
Ha egyik formból szeretnél hozzáférni egy másik form metódusához/változójához, az általában rossz program szerkezetre utal. Vb.Net-ben meg tudod oldani, hogy az ilyeneket modulban valósítod meg.
@sztanozs: Meg ha átadná, akkor sem fér hozzá egy control-hoz a DoWork()-ban. Csoda, hogy egyáltalán nem száll el a futásidőben.
-
sztanozs
veterán
Sziasztok, egy kis segítség kellene... Van 2 formom, nevezzük az egyiket Egyesnek, a másikat Kettesnek. Az Egyes fő formon deklarálva van egy public változó. Erről a formról van meghívva egy backgroundworker. Ez a BGW a Kettes formon levő függvényt használ. Ezen a Kettes formon levő függvényben az Egyes formon levő public változó tartalmát "nothing"-nek látja. Ugyanezen függvény használata nem BGW-vel természetesen a változó valós értékét mutatja.
Mit rontok el? Válaszaitokat előre is köszönöm!
Nem adod át a kettes formnak az egyes form létrehozott objektumának a referenciáját.
Ha esetleg Static változó lenne, akkor erre nem lenne szükség, de ez nem egy szép megoldás. -
Diopapa
addikt
Sziasztok, egy kis segítség kellene... Van 2 formom, nevezzük az egyiket Egyesnek, a másikat Kettesnek. Az Egyes fő formon deklarálva van egy public változó. Erről a formról van meghívva egy backgroundworker. Ez a BGW a Kettes formon levő függvényt használ. Ezen a Kettes formon levő függvényben az Egyes formon levő public változó tartalmát "nothing"-nek látja. Ugyanezen függvény használata nem BGW-vel természetesen a változó valós értékét mutatja.
Mit rontok el? Válaszaitokat előre is köszönöm!
-
lenkei83
tag
Szia!
Közben az Excel fórumban kitárgyaltuk, feltöltöttem ide a táblát: [https://1drv.ms/x/s!Ans3TmRiC9RGhaMx1z_INz4zg7X91Q?e=lSc26r]
-
sztanozs
veterán
Sziasztok!
Mi lehet a kód mögötte? [link]
Ez részben működik:
Public Function rgb_colorincell(Red As Integer, Green As Integer, Blue As Integer) As Long
ActiveCell.Interior.Color = rgb(Red, Green, Blue)
End Function
Itt csak annyi a baj, hogy ha lehúzom a képletet több cellára, akkor viszont nem működik. Minden egyes cellába kézzel kell betolni a képletet.Köszi
P.Mert ez csak az 'activecell'-re működik (az a cella, ami ki van jelölve).
Ráadásul alapból egy UDF (User Defined Function) nem módosíthatja azt a cellát, ami meghívta, szóval csak trükközéssel működik. -
lenkei83
tag
Sziasztok!
Mi lehet a kód mögötte? [link]
Ez részben működik:
Public Function rgb_colorincell(Red As Integer, Green As Integer, Blue As Integer) As Long
ActiveCell.Interior.Color = rgb(Red, Green, Blue)
End Function
Itt csak annyi a baj, hogy ha lehúzom a képletet több cellára, akkor viszont nem működik. Minden egyes cellába kézzel kell betolni a képletet.Köszi
P. -
Hege1234
addikt
Sziasztok! (windows 10)
egy .vbs fájlt szeretnék indítani a windows-al együtt amit egy paranccsal
be is tesz a startup mappába (a hibaüzenet ellenére a fájl ott van)
(trakts autostart enable létrehozza a .vbs fájlt)
trakt-scrobbler.vbsCreateObject("Wscript.Shell").Run "trakts run", 0, Falsesimán a trakts run-t beírva a cmd ablakba hibátlanul működik
de ugye ilyenkor háttérbe futtatja, gondolom mert semmire nem reagál csak villog a kurzor
és egy másik cmd ot futtatva látom, hogy aktív a státusz és ha indítok valamit akkor már szinkronizálja is a trakt-alpróbáltam azt is, hogy egy .bat fájlba beírom csak a "trakts run" -t és feladatütemezésnél hozzáadom, hogy rejtettként fusson minden bejelentkezésnél de az sem működött mert a trakts status -ra
The scrobbler is not running üzenet jöttlehet ez inkább windows-os hiba lesz
vagy a vbs-ben lévő sor hibás?köszi előre is!
-
sztanozs
veterán
Sziasztok,
Mindenekelőtt valamennyiötöknek eredményekben gazdag, boldog újesztendőt kívánok.
Soha nem írtam még fórumra, de most elakadtam. Abban szeretnék segítséget kérni, hogy egy gombbal (Command Button) hogyan lehet egy ciklust leállítani, majd ugyanazzal a gombbal úfolytatni a ciklust. Mindezt Visual Basic-ban képzeltem el.
Ha valaki segítene, azt nagyon megköszönném.
Szervusztok,
JoePapaVB6, VBA vagy VB.NET (esetleg vbscript)?
-
dettyjoe
újonc
Sziasztok,
Mindenekelőtt valamennyiötöknek eredményekben gazdag, boldog újesztendőt kívánok.
Soha nem írtam még fórumra, de most elakadtam. Abban szeretnék segítséget kérni, hogy egy gombbal (Command Button) hogyan lehet egy ciklust leállítani, majd ugyanazzal a gombbal úfolytatni a ciklust. Mindezt Visual Basic-ban képzeltem el.
Ha valaki segítene, azt nagyon megköszönném.
Szervusztok,
JoePapa -
sztanozs
veterán
Köszönöm a segítséget!
(Egyszerű gyerekként
azt hittem, jó helyen járok.)
Jó lesz ez makro nélkül is nekem!
Jó helyen jártál, csak ehhez nem kell makró.
-
tintoretto
csendes tag
Köszönöm a segítséget!
(Egyszerű gyerekként
azt hittem, jó helyen járok.)
Jó lesz ez makro nélkül is nekem!
-
Fire/SOUL/CD
félisten
Sziasztok.
Segítségre lenne szükségem Excel 2013-hoz.
Van egy 28*28-as (azaz 784 elemű) táblázatom, aminek minden
celláját át kellene szerkesztenem. Ilyesmit tartalmaz minden cella, hogy:
"=HA(ÉS(T!$AZ$4="";T!$BB$4="";T!$BA$4=":");(HOL.VAN($O$2;'S'!$B$5:$B$31;0)+1)/2;"")".
Természetesen mindegyik más cellahivatkozásokkal, egy részük kitölthető lenne, egy részük nem. Szóval az az út nem ezért sem járható, meg az abszolút hivatkozások miatt sem.
Az lenne a művelet, hogy minden cellatartalom függvényben az 1. és a 2. egyenlőségjelet <> jelekre szeretném átírni.Akár úgy is jó, hogy manuálisan pozicionálom a kurzort és makró futtatás, majd újra pozicionálom a kurzort, újra futtatás, és így tovább.
Arra gondoltam, hogy talán egy makróval meg lehetne oldani (de a VBA-t sajnos nem ismerem)
Tudna valaki segíteni?Sima Keresés és csere opcióval is kivitelezhető.
# CTRL+H
# Keresett szöveg:=""(macskakörmök közt nincs szóköz)
# Csere erre:<>""(macskakörmök közt nincs szóköz)
# Listába mind
# CTRL+A
# Az összes cseréje
Arra ügyelj, ha azon a 28*28 cellamátrixon kívül is vannak képletet tartalmazó cellák és azokban is megtalálható az="", akkor azokban is le fog így cserélődni ez esetben. Ilyenkor annyit lehet tenni, hogy a Listába mind után a listaelemek közül kitörlöd azokat, amelyek nem a 28*28 tartományba esnek. Egy vagy több listaelemet is ki lehet jelölni és DEL-el kitörölni a listából. Ha ez megvan, csak ezt követően lehet az Összes cseréjére menni...A Te eredeti képleteden csak annyit módosítottam, hogy a külső táblahivatkozásokat kiszedtem belőle, ezért üresek azok a cellák, amikben amúgy a képletek találhatóak....
Ui: Legközelebb a Microsoft Excel topic-ban tegyél fel ilyen jellegű kérdést.
Segítőkész és jó koponyák vannak ott, ha szükséges, akkor a VBA kódban is kaphatsz segítséget.
-
tintoretto
csendes tag
Sziasztok.
Segítségre lenne szükségem Excel 2013-hoz.
Van egy 28*28-as (azaz 784 elemű) táblázatom, aminek minden
celláját át kellene szerkesztenem. Ilyesmit tartalmaz minden cella, hogy:
"=HA(ÉS(T!$AZ$4="";T!$BB$4="";T!$BA$4=":");(HOL.VAN($O$2;'S'!$B$5:$B$31;0)+1)/2;"")".
Természetesen mindegyik más cellahivatkozásokkal, egy részük kitölthető lenne, egy részük nem. Szóval az az út nem ezért sem járható, meg az abszolút hivatkozások miatt sem.
Az lenne a művelet, hogy minden cellatartalom függvényben az 1. és a 2. egyenlőségjelet <> jelekre szeretném átírni.Akár úgy is jó, hogy manuálisan pozicionálom a kurzort és makró futtatás, majd újra pozicionálom a kurzort, újra futtatás, és így tovább.
Arra gondoltam, hogy talán egy makróval meg lehetne oldani (de a VBA-t sajnos nem ismerem)
Tudna valaki segíteni? -
sztanozs
veterán
Köszönöm szépen a válaszát! Légyszíves el küldené nekem a kódsort hogy hogyan lehet növelni a cache méretét?
Mivel a sávszélessség kevés (vsz szerver oldalon), így a nagyobb cache mérettel sem lehet megoldani a problémát. Csak annyi lenne az eremény, hogy nem 4 mp-ként "csatlakozna újra" 3 mp-ig, hanem pl 10 mp-enként 6 mp-ig nem lenne adás.
-
Postas99
őstag
Matek guru vagy XOR guru segítsége kéne.
Adott a következő proléma:
X= Y XOR (Y>>1)
X értékét tudom.
Van-e erre nem BRUTE FORCE megoldás valamilyen bit eltolásos módszerben.
Igazán azért lenne fontos mert ezt a műveletet egymásra épülően kell elvégezni. A kiszámolt Y érték a következő X értéke.
Előre is köszönöm. -
szkristof05
tag
Lassabb a stream letöltési sebessége, mint az adás bitrátája, ezért mindig kifut a letöltött tartalomból (vagy pedig a szerverről kifut a letölthető stream, így a szerver bontja a kapcsolatot). Lehet növelni a cache méretét, de ez csak azt fogja hozni, hogy ritkábban csatlakozik le (ha nem a szerver bont le), viszont újracsatlakozásnál többet kell várni.
Sokat nem lehet ez ellen tenni.
Esetleg az segíthet, ha szerzel olyan hozzáférést (tipikusan VPN), ahonnan nagyobb letöltési sebességgel érhető el a stream.Köszönöm szépen a válaszát! Légyszíves el küldené nekem a kódsort hogy hogyan lehet növelni a cache méretét?
-
sztanozs
veterán
Sziasztok!
Segítségeteket kérném! Az a problémám hogy van egy Windows media playerem a programomban és hozzá van rendelve különbözö tv csatornáknak a stream linkjei és sok tv csatorna azt csinálja hogy kb 4 másodpercenként újra csatlakozik!
Tudnátok ebben segíteni hogy ne csinálja ezt?
Sehol se találtam erre a hibára megoldást
Lassabb a stream letöltési sebessége, mint az adás bitrátája, ezért mindig kifut a letöltött tartalomból (vagy pedig a szerverről kifut a letölthető stream, így a szerver bontja a kapcsolatot). Lehet növelni a cache méretét, de ez csak azt fogja hozni, hogy ritkábban csatlakozik le (ha nem a szerver bont le), viszont újracsatlakozásnál többet kell várni.
Sokat nem lehet ez ellen tenni.
Esetleg az segíthet, ha szerzel olyan hozzáférést (tipikusan VPN), ahonnan nagyobb letöltési sebességgel érhető el a stream. -
szkristof05
tag
Sziasztok!
Segítségeteket kérném! Az a problémám hogy van egy Windows media playerem a programomban és hozzá van rendelve különbözö tv csatornáknak a stream linkjei és sok tv csatorna azt csinálja hogy kb 4 másodpercenként újra csatlakozik!
Tudnátok ebben segíteni hogy ne csinálja ezt?
Sehol se találtam erre a hibára megoldást
-
sztanozs
veterán
Nagyon rég volt már lináris algebra, de általánosságban VB-ben vagy használsz valami erre a célra kifejlesztetett cél-csomagot (dll vagy ocx) vagy megírod a kalkulációt kézzel. Mire szeretnéd használni a mátrix inverzét?
-
Postas99
őstag
a mátrix elemeket akarod felcserélni ? 1-16 csere 1->16->1 erre gondolsz? Jól értem?
-
Bazs87
tag
Sziasztok!
Talán él még valaki, aki a témával foglalkozik

A következő problémában szeretném az esetleges segítségeteket kérni:
Mintát szeretnék kérni egy 4*4-es mátrix invertálásához.
Valaki csinált már esetleg hasonlót? -
Mr. Y
őstag
Válasszuk ketté:
1, Megszámolod a COM portokat.
2, hozzádadod a combobox elemeihez.For Each sp As String In My.Computer.Ports.SerialPortNamesComboBox1.Items.Add(sp)NextComboBox1.Sorted = True_________________________________________
HA van COM PORT (COM1,COM2,COM3)
akkor kiválasztod az alapértelmezettnek a legelsőnek megtalált értéket, természetesen ha az kell akkor a sorted-et ki lehet venni, ha sorba akarod rendezni akkor ezzel szebb lesz az eredmény.If ComboBox1.TabIndex <> 0 ThenComboBox1.SelectedIndex = 0End If
Mi lenne ha ezt használnád?Sehogyan sem megy.
Szerintem nem a programban van a hiba, ha egyszer az egyik gépen megy, a másikon pedig nem. -
sztanozs
veterán
Kedves Fórumozók!
Nem boldogulok az alábbi feladattal. Egy QR kódot szeretnék excel táblába menteni.
A QR kódot Internet Explorerrel online generálom, és az IE oldalról kellene átmásolni a munkalapra. A QR megjelenik az Explorer oldalon, de nem tudom átmásolni.
Sub FillInternet2()Dim IE As ObjectDim adat As Stringadat = "https://chart.googleapis.com/chart?chs=200x200&cht=qr&chl=BEGIN:VCARD%0AN:Teszt%20Elek%0AEND:VCARD"Set IE = CreateObject("InternetExplorer.Application")IE.navigate adatWhile IE.ReadyState <> 4DoEventsWendIE.Visible = TrueFor Each itm In IE.document.alln = n + 1Cells(20 + n, 1) = itmIf itm = "[object HTMLImageElement]" Then'Cells(2, 27) = Img.getAttribute("src")End IfNextIE.QuitEnd SubSegítségeteket előre is nagyon köszönöm.Option Explicit
'Használata:
'GenerateQR Range("B2"), "https://chart.googleapis.com/chart?chs=200x200&cht=qr&chl=BEGIN:VCARD%0AN:Teszt%20Elek%0AEND:VCARD"
'
Public Sub GenerateQR(R As Range, Url As String)
Dim im As Object
Set im = ActiveSheet.OLEObjects.Add(ClassType:="Forms.Image.1", Link:=False, DisplayAsIcon:=False, Left:=R.Left, Top:=R.Top + 2, Width:=1, Height:=1)
im.Object.AutoSize = True
im.Object.BorderStyle = 0
im.Object.PictureAlignment = 0
Set im.Object.Picture = GetPicture(Url)
R.ColumnWidth = im.Width * 0.141 * 1.333
R.RowHeight = im.Height + 4
End Sub
Private Function GetPicture(Url As String) As StdPicture
Dim wv As Object
Set wv = CreateObject("WIA.Vector")
wv.BinaryData = GetWebData(Url)
Set GetPicture = wv.Picture
Set wv = Nothing
End Function
Private Function GetWebData(Url As String) As Byte()
Dim objHTTP
Set objHTTP = CreateObject("Microsoft.XMLHTTP")
objHTTP.Open "GET", Url, False
objHTTP.Send
If objHTTP.statusText = "OK" Then
GetWebData = objHTTP.ResponseBody
End If
Set objHTTP = Nothing
End Function -
bsh
addikt
nem VB, hanem VBA (és elvileg nem 6 hanem 7), és nem szerettem volna vb.net-re átültetni, hanem VBA-ból VB-be és futtatható programot csinálni belőle (tudtommal VBA-ból nem lehet). a vb.net onnan jött, hogy google kereső szerint VB-t visual studioval kell fejleszteni. azt nem említette, hogy az vb.NET...
de már kész van a program. -
Papa100
csendes tag
Kedves Fórumozók!
Nem boldogulok az alábbi feladattal. Egy QR kódot szeretnék excel táblába menteni.
A QR kódot Internet Explorerrel online generálom, és az IE oldalról kellene átmásolni a munkalapra. A QR megjelenik az Explorer oldalon, de nem tudom átmásolni.
Sub FillInternet2()Dim IE As ObjectDim adat As Stringadat = "https://chart.googleapis.com/chart?chs=200x200&cht=qr&chl=BEGIN:VCARD%0AN:Teszt%20Elek%0AEND:VCARD"Set IE = CreateObject("InternetExplorer.Application")IE.navigate adatWhile IE.ReadyState <> 4DoEventsWendIE.Visible = TrueFor Each itm In IE.document.alln = n + 1Cells(20 + n, 1) = itmIf itm = "[object HTMLImageElement]" Then'Cells(2, 27) = Img.getAttribute("src")End IfNextIE.QuitEnd SubSegítségeteket előre is nagyon köszönöm. -
Postas99
őstag
Válasszuk ketté:
1, Megszámolod a COM portokat.
2, hozzádadod a combobox elemeihez.For Each sp As String In My.Computer.Ports.SerialPortNamesComboBox1.Items.Add(sp)NextComboBox1.Sorted = True_________________________________________
HA van COM PORT (COM1,COM2,COM3)
akkor kiválasztod az alapértelmezettnek a legelsőnek megtalált értéket, természetesen ha az kell akkor a sorted-et ki lehet venni, ha sorba akarod rendezni akkor ezzel szebb lesz az eredmény.If ComboBox1.TabIndex <> 0 ThenComboBox1.SelectedIndex = 0End If
Mi lenne ha ezt használnád? -
Mr. Y
őstag
Most lefordul és visszajött az eredeti probléma, ami az egyes gépen nem állt fent.

-
Postas99
őstag
2 textbox kell pl.
majd ennyit tegyél hozzá (dupla katt a texbox1-re majd kód beillesztés:
TextBox2.Text = ""For Each c As Char In TextBox1.TextTextBox2.Text &= Convert.ToString(Convert.ToInt32(c), 16)Next -
sztanozs
veterán
nem excelről van szó, honnan veszitek ezt? köze nincs hozzá. miért gondol mindenki excel-re ha VBA merül fel? egy mysql adatbázis turkáló program ez. (és az a része működik is. bár az se volt egyszerű...) egyetlen függőség egy mysql odbc connector driver ado-n keresztül, de lehet anélkül is meg lehetne oldani a kapcsolatot.
igazából nem nagyon tudom, mi a vb.NET.
nem nagyon akarnék .net függőségeket.
nem akarom winforms-ba átrakni, hanem a visual studió ilyen userformot hoz létre miután létrehoztam egy VB projektet, és csak winforms elemek vannak. comboboxra nem is találok multicolumn-ról semmit, egyáltalán, tulajdonságainál sincs. a winforms-os CB az ennyire más?
sokszáz szintaktikai eltérés és hiba volt, ezeket végigjavítottam vagy kikommenteltem, most lefordíja hiba nélkül a programot és megjelenik a form és látom, hogy az sql lekérdezések is mennek rendben. most igazából csak a triviális dolgokkal van egyelőre gond: a különböző comboboxok feltöltése (statikus) szövegekkel, eredmények megjelenítése (na az szép lesz, vba listbox helyett listview vagy datagrid lesz...)akkor úgy kérdezem: hogy fogjak hozzá egy ilyen VBA->standalone exe művelethez? a net szerint a visual studio a módja. azt se ismerem.

Tehát neked volt VB6 kódod, és abból szeretnél VB.NET-et csinálni?
-
Mr. Y
őstag
Független kérdés:
Van módja annak, hogy egy szöveget ne ASCII formátumban jelenítsen meg, hanem HEX vagy BIN-ben?
Vagy ezt a fordítót nekem kell megírnom? -
Mr. Y
őstag
-
Postas99
őstag
-
Mr. Y
őstag
-
Postas99
őstag
Mi lenne a cél?
Miért nem használsz inkább DGV-t?
Vagy az lenne a fontos hogy a comboboxba feltöltött elemeket ki tudd választani?
Mert ha túl nagy a populate érték ez a combobox dolog elfajulhat és qrva szar onnan bármilyen adatot könnyen kiválasztani.
Ehhez képest a datagridview ugyanúgy feltölthető ha sok az elem benne akkor még scrollozható is és onnan is ki lehet szedni current cell value-t.Szóval mi lenne a cél?
-
Postas99
őstag
VBA-t írtál. VBA!=VB.NET
Idézlek ha nem gond: "De lenne egy VBA-ban írt form és kód hozzá, ami egy adatbázisos mókát képez."[Gugliztam helyetted] gondolom erre lenne szükséged
-
bsh
addikt
A VBA mint írtad az office közös makró nyelve aminek nincs köze a VB.NET-hez.
A VBA mint írtad az office közös makró nyelve
hol írtam én ilyet?
combobox feltöltése sql adatokkal az megy, köszi.
multicolumn combobox-hoz építő jellegű hozzászólás?
vagy ha az nem megoldható, akkor mi legyen helyette? -
Postas99
őstag
-
Postas99
őstag
nem excelről van szó, honnan veszitek ezt? köze nincs hozzá. miért gondol mindenki excel-re ha VBA merül fel? egy mysql adatbázis turkáló program ez. (és az a része működik is. bár az se volt egyszerű...) egyetlen függőség egy mysql odbc connector driver ado-n keresztül, de lehet anélkül is meg lehetne oldani a kapcsolatot.
igazából nem nagyon tudom, mi a vb.NET.
nem nagyon akarnék .net függőségeket.
nem akarom winforms-ba átrakni, hanem a visual studió ilyen userformot hoz létre miután létrehoztam egy VB projektet, és csak winforms elemek vannak. comboboxra nem is találok multicolumn-ról semmit, egyáltalán, tulajdonságainál sincs. a winforms-os CB az ennyire más?
sokszáz szintaktikai eltérés és hiba volt, ezeket végigjavítottam vagy kikommenteltem, most lefordíja hiba nélkül a programot és megjelenik a form és látom, hogy az sql lekérdezések is mennek rendben. most igazából csak a triviális dolgokkal van egyelőre gond: a különböző comboboxok feltöltése (statikus) szövegekkel, eredmények megjelenítése (na az szép lesz, vba listbox helyett listview vagy datagrid lesz...)akkor úgy kérdezem: hogy fogjak hozzá egy ilyen VBA->standalone exe művelethez? a net szerint a visual studio a módja. azt se ismerem.

A VBA mint írtad az office közös makró nyelve aminek nincs köze a VB.NET-hez.
-
Mr. Y
őstag
Szerintem igen (egyszerre sosincs itt a két gép). Mindkettő 64Bites, így azt gyanítom, hogy azonosak a beállítások is. A debug meg a futtatás, csak más környezetből jöttem

-
Postas99
őstag
-
Mr. Y
őstag
-
bsh
addikt
nem excelről van szó, honnan veszitek ezt? köze nincs hozzá. miért gondol mindenki excel-re ha VBA merül fel? egy mysql adatbázis turkáló program ez. (és az a része működik is. bár az se volt egyszerű...) egyetlen függőség egy mysql odbc connector driver ado-n keresztül, de lehet anélkül is meg lehetne oldani a kapcsolatot.
igazából nem nagyon tudom, mi a vb.NET.
nem nagyon akarnék .net függőségeket.
nem akarom winforms-ba átrakni, hanem a visual studió ilyen userformot hoz létre miután létrehoztam egy VB projektet, és csak winforms elemek vannak. comboboxra nem is találok multicolumn-ról semmit, egyáltalán, tulajdonságainál sincs. a winforms-os CB az ennyire más?
sokszáz szintaktikai eltérés és hiba volt, ezeket végigjavítottam vagy kikommenteltem, most lefordíja hiba nélkül a programot és megjelenik a form és látom, hogy az sql lekérdezések is mennek rendben. most igazából csak a triviális dolgokkal van egyelőre gond: a különböző comboboxok feltöltése (statikus) szövegekkel, eredmények megjelenítése (na az szép lesz, vba listbox helyett listview vagy datagrid lesz...)akkor úgy kérdezem: hogy fogjak hozzá egy ilyen VBA->standalone exe művelethez? a net szerint a visual studio a módja. azt se ismerem.

-
Delila_1
veterán
Sziasztok,
lenne egy nagyon láma kérdésem, és valamiért google-el se találtam rá választ.
Előrebocsájtom, hogy VB-ről fingom sincs, se Visual Studióról
De lenne egy VBA-ban írt form és kód hozzá, ami egy adatbázisos mókát képez. Ezt gondoltam egy külön önálló alkalmazásként megírni, mivel azt hallottam, hogy "rendkívül egyszerű VBA-ról VB-re átteni egy kódot, szinte ugyanaz a kettő, stb..."
Hát egyelőre nem így látom...
Szóval sok problémát megoldottam, de ilyen triviálisakra nem találok megoldást:
VBA userform-on activex combobox, két oszloppal, amiből csak egy látszik, a boundcolumn az amelyik nem látszik. (columnwidth=0)
példa:megjelenő szöveg: valós érték (ami nem jelenik meg, mondjuk egy sql id):józsi 125540manci 65981benő 8989898VS-ben meg winforms.comboxot használ (meg .net-et???), és ott nem bírok sehogy ilyen kétoszlopos-boundcolumnos dolgot csinálni. Hogy kellene ezt?
Vagy lehet valahogy olyan projektet létrehozni, ahol nem winforms-t használ, hanem activex-et, és akkor tényleg elég triviális lenne átteni a kódot.A RowSource tulajdonságnál megadod a lista tartományát, a címsor nélkül, pl.
Munka1!A2:B15, ahol az első a címsor.
Beállítod az oszlopok számát a ColumnCount-nál. Az egyes oszlopok szélességét a ColumnWidths tulajdonsághoz írd be pont mértékegységben, pontosvesszőkkel elválasztva az adatokat.
Ha címsort is akarsz látni, akkor A1-től add meg a tartományt, és a ColumnHeads legyen True. -
sztanozs
veterán
Sziasztok,
lenne egy nagyon láma kérdésem, és valamiért google-el se találtam rá választ.
Előrebocsájtom, hogy VB-ről fingom sincs, se Visual Studióról
De lenne egy VBA-ban írt form és kód hozzá, ami egy adatbázisos mókát képez. Ezt gondoltam egy külön önálló alkalmazásként megírni, mivel azt hallottam, hogy "rendkívül egyszerű VBA-ról VB-re átteni egy kódot, szinte ugyanaz a kettő, stb..."
Hát egyelőre nem így látom...
Szóval sok problémát megoldottam, de ilyen triviálisakra nem találok megoldást:
VBA userform-on activex combobox, két oszloppal, amiből csak egy látszik, a boundcolumn az amelyik nem látszik. (columnwidth=0)
példa:megjelenő szöveg: valós érték (ami nem jelenik meg, mondjuk egy sql id):józsi 125540manci 65981benő 8989898VS-ben meg winforms.comboxot használ (meg .net-et???), és ott nem bírok sehogy ilyen kétoszlopos-boundcolumnos dolgot csinálni. Hogy kellene ezt?
Vagy lehet valahogy olyan projektet létrehozni, ahol nem winforms-t használ, hanem activex-et, és akkor tényleg elég triviális lenne átteni a kódot.ez nem ilyen egyszerű - mivel az office nem ismeri a VB.NET-et, csak a VBA-t, csak úgy tudod átrakni winforms-ba, ha onnan oldod meg a teljes excel manipulációt - tehát a felhasználót nem hagyod az excelben matatni.
-
bsh
addikt
Sziasztok,
lenne egy nagyon láma kérdésem, és valamiért google-el se találtam rá választ.
Előrebocsájtom, hogy VB-ről fingom sincs, se Visual Studióról
De lenne egy VBA-ban írt form és kód hozzá, ami egy adatbázisos mókát képez. Ezt gondoltam egy külön önálló alkalmazásként megírni, mivel azt hallottam, hogy "rendkívül egyszerű VBA-ról VB-re átteni egy kódot, szinte ugyanaz a kettő, stb..."
Hát egyelőre nem így látom...
Szóval sok problémát megoldottam, de ilyen triviálisakra nem találok megoldást:
VBA userform-on activex combobox, két oszloppal, amiből csak egy látszik, a boundcolumn az amelyik nem látszik. (columnwidth=0)
példa:megjelenő szöveg: valós érték (ami nem jelenik meg, mondjuk egy sql id):józsi 125540manci 65981benő 8989898VS-ben meg winforms.comboxot használ (meg .net-et???), és ott nem bírok sehogy ilyen kétoszlopos-boundcolumnos dolgot csinálni. Hogy kellene ezt?
Vagy lehet valahogy olyan projektet létrehozni, ahol nem winforms-t használ, hanem activex-et, és akkor tényleg elég triviális lenne átteni a kódot. -
sztanozs
veterán
-
Mr. Y
őstag
-
Mr. Y
őstag
Persze, hogy van. 4 darab is.
Ugyan az a verzió szerintem, mindkét gépre ugyan onnan szedtem le és ugyan azt telepítettem.
Ugyan úgy Win10 mindkettő. Ugyan úgy Intel, csak a céges egy i5 vPro, az itthoni meg egy i9-es.
Ami még eltérő lehet, hogy az itthoni egy ROG, így a játékok végett gondolom elég sokmindent feltelepített már, lehet ez probléma? Ütközés esetleg?Plusz volt egy olyan különbség, hogy az itthoni gépen a tűzfal megtámadta, mikor rámentem a Debug-ra. De miután engedélyeztem, már nem volt ezzel baja.
-
sztanozs
veterán
Sziasztok!
Remélem nem halt ki a topik fél év inaktivitás után, így próbálkozom.
Adott egy program, amit megírtam a céges laptopon (MS VisualStudio alatt). Ez egy Soros kommunikációs diagnosztikai program, ami hibátlan volt.
Áthoztam az itthoni gépre és folyamatossan hibára fut, valamiért nem képes beolvasni a COM portokat.
Van erre valakinek valami ötlete, hogy miért nem működik az itthoni gépen?Előre is köszönöm
Fordításnlál azt dobja ki, hogy a Selected.Index = 0 értéke nem valós. De semmi sem az szerinte
Rakd bele az egászet (vagy csak a SelectedIndex) sort egy If be:
If SerialPort.GetPortNames().Length > 0 Then
...
End If -
sztanozs
veterán
Sziasztok!
Remélem nem halt ki a topik fél év inaktivitás után, így próbálkozom.
Adott egy program, amit megírtam a céges laptopon (MS VisualStudio alatt). Ez egy Soros kommunikációs diagnosztikai program, ami hibátlan volt.
Áthoztam az itthoni gépre és folyamatossan hibára fut, valamiért nem képes beolvasni a COM portokat.
Van erre valakinek valami ötlete, hogy miért nem működik az itthoni gépen?Előre is köszönöm
Fordításnlál azt dobja ki, hogy a Selected.Index = 0 értéke nem valós. De semmi sem az szerinte
Fordításnál, vagy futtatásnál?
-
Postas99
őstag
Sziasztok!
Remélem nem halt ki a topik fél év inaktivitás után, így próbálkozom.
Adott egy program, amit megírtam a céges laptopon (MS VisualStudio alatt). Ez egy Soros kommunikációs diagnosztikai program, ami hibátlan volt.
Áthoztam az itthoni gépre és folyamatossan hibára fut, valamiért nem képes beolvasni a COM portokat.
Van erre valakinek valami ötlete, hogy miért nem működik az itthoni gépen?Előre is köszönöm
Fordításnlál azt dobja ki, hogy a Selected.Index = 0 értéke nem valós. De semmi sem az szerinte
Nem akarlak h.lyenek nézni van sorosport a gépeden? Csak mert ha az index nullát ad vissza az is egy érték ellenben ha n tudja kérdezni az lehet a probléma.
Mi a catch lekezelése?Ugyazon vs verzióról van szó?
A .net szintén azonos a két gépen? Os verzió? -
Mr. Y
őstag
Sziasztok!
Remélem nem halt ki a topik fél év inaktivitás után, így próbálkozom.
Adott egy program, amit megírtam a céges laptopon (MS VisualStudio alatt). Ez egy Soros kommunikációs diagnosztikai program, ami hibátlan volt.
Áthoztam az itthoni gépre és folyamatossan hibára fut, valamiért nem képes beolvasni a COM portokat.
Van erre valakinek valami ötlete, hogy miért nem működik az itthoni gépen?Előre is köszönöm
Fordításnlál azt dobja ki, hogy a Selected.Index = 0 értéke nem valós. De semmi sem az szerinte
-
Atomantiii
addikt
-
sztanozs
veterán
Köszi ez már majdnem jó, csak az a baj, hogy nem kékkel jelöli ki az adott sort mint az aktív listviewben, hanem halványszürke lesz a másik listview kijelölt sora.
Ha pedig a hideselection = true-n van akkor egyáltalán nem látszik a kijelölés, ahogy írtad.
mert a kék az aktív kontroll kijelölése, a szürke pedig az épp nem aktív kontrollé.
Ha azt szeretnéd, hogy a nem aktív kontroll is kék legyen, akkor mókolni kell: [link] -
Atomantiii
addikt
asszem listview2.listitems.item(index).selected = true, csak ne legyen a hideselection = true, mert akkor a nem aktív listview-n nem látszik a kijelölés.
és ha multiselect van, akkor végig kell menni a teljes listview1 listán és átállítani a listview2-ben, ahol nem megfelelő a selected értéke.Köszi ez már majdnem jó, csak az a baj, hogy nem kékkel jelöli ki az adott sort mint az aktív listviewben, hanem halványszürke lesz a másik listview kijelölt sora.
Ha pedig a hideselection = true-n van akkor egyáltalán nem látszik a kijelölés, ahogy írtad.
-
sztanozs
veterán
Még mindig VB6: azt hogy tudom megcsinálni, hogy ha van 2 db listviewem, engedélyezve van a fullrowselect és fel van töltve adatokkal mindkét listview és az egyik listviewben rákattintok az első sorra és így kijelöli az egész sort akkor a kijelölés a másik listview első sorára is megtörténjen?
Próbálgattam a selecteditem-eket, de mindig azt írja, hogy az adott érték csak olvasható és nem adható meg másik listviewvnél értéknek.
asszem listview2.listitems.item(index).selected = true, csak ne legyen a hideselection = true, mert akkor a nem aktív listview-n nem látszik a kijelölés.
és ha multiselect van, akkor végig kell menni a teljes listview1 listán és átállítani a listview2-ben, ahol nem megfelelő a selected értéke. -
Atomantiii
addikt
Még mindig VB6: azt hogy tudom megcsinálni, hogy ha van 2 db listviewem, engedélyezve van a fullrowselect és fel van töltve adatokkal mindkét listview és az egyik listviewben rákattintok az első sorra és így kijelöli az egész sort akkor a kijelölés a másik listview első sorára is megtörténjen?
Próbálgattam a selecteditem-eket, de mindig azt írja, hogy az adott érték csak olvasható és nem adható meg másik listviewvnél értéknek.
-
Atomantiii
addikt
-
sztanozs
veterán
VB.Net-nél a 2019-es visual stúdióra gondolsz?
VB.NET-nél a nyelvre gondolok. A Visual Studio 2019 az IDE hozzá (de lehet benne többek között C#-ban, F#-ban, C++ -ban vagy akár Python-ban is fejleszteni).
-
Atomantiii
addikt
-
sztanozs
veterán
Ez még a 6-os. Tudom nem mai darab, de nekem ez az érthető még kb bár egyszer lehet meg kellene próbálnom egy újabb verziót csak azt nem tudom melyiket amivel még nagyjából én is boldogulni tudnék.
De rájöttem, hogy maga az ico fájlokban benne van több méret is 16x16-ostól a 48x48-asig, win 7-ig a 16x16-ost használta, míg a win 10 már a legnagyobbat választotta ki magának.
Wow, eléggé régi az a verzió, csodálom, hogy még Win10-alatt is "normálisan" működik.
VB.NET-tel próbálkozz meg szvsz. -
Atomantiii
addikt
Ez még a 6-os. Tudom nem mai darab, de nekem ez az érthető még kb bár egyszer lehet meg kellene próbálnom egy újabb verziót csak azt nem tudom melyiket amivel még nagyjából én is boldogulni tudnék.
De rájöttem, hogy maga az ico fájlokban benne van több méret is 16x16-ostól a 48x48-asig, win 7-ig a 16x16-ost használta, míg a win 10 már a legnagyobbat választotta ki magának.
-
sztanozs
veterán
Van még itt valaki?
Van egy programom, amiben image 1-et használok és ikonokat jelenítenék meg vele 16 x 16-os méretben.
Itt kezdődik a probléma, hogy eddig win 7-en és az alatti operációs rendszereken jó méretben jelennek meg az ikonok:

míg win 10 alatt sajnos nagyobb méretben jelennek meg az ikonok, mint ahogy kellene.

Hogyan lehetne ezt javítani, hogy win 10-en is helyes méretben jelenjenek meg a képek?
Ez melyik VB?
-
Atomantiii
addikt
Van még itt valaki?
Van egy programom, amiben image 1-et használok és ikonokat jelenítenék meg vele 16 x 16-os méretben.
Itt kezdődik a probléma, hogy eddig win 7-en és az alatti operációs rendszereken jó méretben jelennek meg az ikonok:

míg win 10 alatt sajnos nagyobb méretben jelennek meg az ikonok, mint ahogy kellene.

Hogyan lehetne ezt javítani, hogy win 10-en is helyes méretben jelenjenek meg a képek?
Közben rájöttem a megoldásra.
Új hozzászólás Aktív témák
-
Fórumok
PROHARDVER! - 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! BlogokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokLOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendFÁ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
- Projektor topic
- Milyen videókártyát?
- Vicces képek
- Luck Dragon: Asszociációs játék. :)
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Kerékpárosok, bringások ide!
- Huawei Watch Fit 5 Pro - jó forma
- Formula-1
- Honor Magic7 Pro - kifinomult, költséges képalkotás
- exHWSW - Értünk mindenhez IS
- További aktív témák...
- 24 magos AMD Threadripper alapú munkára kiváló félgép, 128GB RAM-mal
- HP ZBook Fury 15 G7 i7-10850H 32GB 512GB SSD Quadro T2000 4GB FHD HUN bill, szép állapotban eladó
- Eladó MacBook Pro 16,1 2019 CTO
- új 0 km es garanciás lenovo loq rtx 5050 8gb
- Eladó teljesen újszerű karcmentes Samsung Galaxy Watch Ultra
- Samsung Galaxy A26 5G 256GB, Kártyafüggetlen, 1 Év Garanciával
- Azonnali készpénzes INTEL CPU AMD VGA számítógép felvásárlás személyesen / postával korrekt áron
- Gamer PC-Számítógép! Csere-Beszámítás! I7 9700 / RTX 3070 / 16GB DDR4 / 1TB SSD!
- ÚJ Lenovo Legion Pro 7 Intel Core i9-14900HX, 32GB, 1TB SSD, RTX 4090(16GB), IPS 240Hz
- Keresünk iPhone 13/13 Mini/13 Pro/13 Pro Max
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest










nem nagyon akarnék .net függőségeket.


