Hirdetés
- Luck Dragon: Asszociációs játék. :)
- Gurulunk, WAZE?!
- sziku69: Fűzzük össze a szavakat :)
- potyautas: A Magyar Néphadsereg emlékére
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- sziku69: Szólánc.
- bambano: Bambanő háza tája
- GoodSpeed: A RAM-válság és annak lehetséges hatásai
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- gban: Ingyen kellene, de tegnapra
-
LOGOUT
A Microsoft Excel topic célja segítséget kérni és nyújtani Excellel kapcsolatos problémákra.
Kérdés felvetése előtt olvasd el, ha még nem tetted.
Új hozzászólás Aktív témák
-
Delila_1
veterán
válasz
alfa20
#22467
üzenetére
Így is átadhatod a változó értékét:
Sub indit()
Dim fajl1 As String
fajl1 = ActiveWorkbook.Name
vizsgal fajl1 'itt adod át a változót
End Sub
Sub vizsgal(fajl1) 'itt fogadod a változót
MsgBox fajl1
End SubA beírt példádban mindkét makrót End Sub() módon zártad le, hibásan. Ott már nem lehet zárójelpár.
A 2. makród végéről kivettem az indit makró meghívását, hiszen az egy végtelen ciklust hozott létre. -
Delila_1
veterán
válasz
csongi
#22457
üzenetére
Nem kell semmit rágnod

Alt+F8-ra bejön egy ablak, amiben kiválasztod, és indítod a cikksz nevű makrót.
Persze ehhez be kell másolnod. Alt+F11-gyel bejutsz a VB szerkesztőbe. Bal oldalon kiválasztod a füzetedet.
Insert | Module. Jobb oldalon a kapott nagy fehér területre bemásolod a makrót. Vissza a füzetbe, mentés.
Ezt a műveletet 1× kell elvégezni. -
Delila_1
veterán
válasz
csongi
#22448
üzenetére
Csúnya, olvashatatlan lett a makró külalakja a tabulátor helytelen használata miatt, elnézést. Inkább újra beírom.
Sub cikksz()
Dim sor As Long, sor1 As Long, sor2 As Long, lel
Application.ScreenUpdating = False
sor = 1: sor2 = 1
Do While Cells(sor, "A") <> ""
If Application.CountIf(Columns(4), Cells(sor, "B")) > 0 Then
Set lel = Columns(4).Find(Cells(sor, "B"), LookIn:=xlValues)
sor1 = lel.Row
Cells(sor2, "I") = Cells(sor, "A")
Cells(sor2, "K") = Cells(sor, "B")
Cells(sor2, "M") = Cells(sor, "C")
Cells(sor2, "J") = Cells(sor1, "F")
Cells(sor2, "L") = Cells(sor1, "E")
sor2 = sor2 + 1
End If
sor = sor + 1
Loop
Application.ScreenUpdating = True
End Sub -
Delila_1
veterán
válasz
csongi
#22448
üzenetére
Makró a 2. táblázat létrehozásához:
Sub cikksz()
Dim sor As Long, sor1 As Long, sor2 As Long, lel
Application.ScreenUpdating = False
sor = 1: sor2 = 1
Do While Cells(sor, "A") <> ""
If Application.CountIf(Columns(4), Cells(sor, "B")) > 0 Then
Set lel = Columns(4).Find(Cells(sor, "B"), LookIn:=xlValues)
sor1 = lel.Row
If Not IsError(sor1) Then
Cells(sor2, "I") = Cells(sor, "A")
Cells(sor2, "K") = Cells(sor, "B")
Cells(sor2, "M") = Cells(sor, "C")
Cells(sor2, "J") = Cells(sor1, "F")
Cells(sor2, "L") = Cells(sor1, "E")
sor2 = sor2 + 1
End If
End If
sor = sor + 1
Loop
Application.ScreenUpdating = True
End Sub -
Delila_1
veterán
Ehhez nem kell felhasználói függvény.
Kijelölöd a tartományt, Adatok | Szövegből oszlopok menü. Tagolt, határoló jel a kötőjel. Ez szétbontja az adatokat az A:D tartományba. A D oszlopban lesz a két utolsó számjegy, alsó kötőjellel elválasztva.
Kijelölöd a D oszlop adatait, újra Szövegből oszlopok, itt a tagoló jel az alsó kötőjel.
Ennyi, csupán néhány kattintás.
Rögzítéssel makró hozzá – kicsit javítva:
Sub Rögzítés1()
Dim usor As Long
usor = Range("A" & Rows.Count).End(xlUp).Row
Range("A1:A" & usor).TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
:="-", FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1)), _
TrailingMinusNumbers:=True
Range("D1:D" & usor).TextToColumns Destination:=Range("D1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
:="_", FieldInfo:=Array(Array(1, 1), Array(2, 1)), TrailingMinusNumbers:=True
End Sub -
Delila_1
veterán
Ennél az A:D tartományból számolsz valamit a kalkulátor lapon. Ha úgy írnám, ahogy mondtad, az eredmény minden sorból a lista lap E2 és F2 cellájába kerülne, felülírva az előző adatokat. A másolást az E2 és F2 cellába tettem első esetben, a továbbiakat rendben ezek alá.
Sub Valami()
Dim sor As Long, WS As Worksheet, sor1 As Long
Set WS = Sheets("kalkulátor")
sor = 1: sor1 = 2
Sheets("lista").Activate
Do While Cells(sor, "A") <> ""
Range("A" & sor & ":D" & sor).Copy
WS.Range("B2").PasteSpecial Paste:=xlPasteAll, Transpose:=True
WS.Range("O6").Copy
Range("E" & sor1).PasteSpecial xlPasteValues
WS.Range("R6").Copy
Range("F" & sor1).PasteSpecial xlPasteValues
sor = sor + 1: sor1 = sor1 + 1
Loop
End Sub -
Delila_1
veterán
A függvényt egy speciális formához írtam, amilyent megadtál, pl. 2-2-0-0,4_22, vagy 2-2-0-2_22.
Számjegyeket kötöttél össze kötőjelekkel, végül egy alsó kötőjellel. A függvény azt a számot adja vissza, ami az utolsó kötőjel, és az alsó kötőjel között van.
A cella tartalmát vizsgálja a végétől az eleje felé haladva. Az
If Mid(cella, kar, 1) = "_" Then ig = kar
sor az alsó kötőjel pozícióját teszi be az ig változóba – kar a ciklusváltozó.
A lenti részlet az utoljára előforduló kötőjel +1 helyét teszi be a tol változóba, vagyis a kiírandó szám első karakterének a helyét.
If Mid(cella, kar, 1) = "-" Then
tol = kar + 1
Exit For
End IfItt már nem kell tovább vizsgálni a hivatkozott cella adatát, ki lehet lépni a ciklusból. Már csak a szám kiíratása van hátra.
Lehet, hogy a hivatkozott celláid formája nem egyezik meg azzal, amilyent megadtál, akkor nem kapsz jó eredményt, hiszen a függvényt kifejezetten az általad megadott kötőjel – alsó kötőjel formához írtam.
-
Delila_1
veterán
Írtam egy Kotjel nevű függvényt rá.
Function Kotjel(cella As Range)
Dim kar As Integer, tol As Integer, ig As Integer
For kar = Len(cella) To 1 Step -1
If Mid(cella, kar, 1) = "_" Then ig = kar
If Mid(cella, kar, 1) = "-" Then
tol = kar + 1
Exit For
End If
Next
ig = ig - tol
Kotjel = Mid(cella, tol, ig)
End FunctionBeviszed a füzetedben egy modulba, és =kotjel(A1) formában alkalmazod.
Ha több füzetben is használnád, érdemes a personalba másolni. -
Delila_1
veterán
válasz
dellfanboy
#22410
üzenetére
A DARABTELI függvény nulla értéket ad annál a 20k-nál.
A 120k-t keresd a 100k-ban.
-
Delila_1
veterán
válasz
madrol
#22397
üzenetére
Már nincs előttem a füzeted, de úgy emlékszem, A2-ben kezdődtek a cikkszámok (vagy mik).
Ez elé akarsz tenni olyan sorszámot, ami az azonos cikkszámoknál megegyezik? Ha igen, szúrj be egy oszlopot az A elé. A2-be írj egy 1-est. Az A3 képlete (ezt kell majd másolnod) =HA(B3=B2;A2;A2+1)
-
Delila_1
veterán
válasz
botond187
#22373
üzenetére
Makróval:
Sub Nyolc()
Range("B2:B101") = "=CHAR(RANDBETWEEN(65,90)) & CHAR(RANDBETWEEN(65,90))& RANDBETWEEN(10000,99999) & CHAR(RANDBETWEEN(65,90))"
End SubA függvények angol nyelvű változatát könnyen megtudhatod.
1. Beírod a magyar függvényt, és ellenőrzöd, hogy működik-e.
2. Lapfülön jobb klikk, Beszúrás, Nemzetközi makrólap
3. A kapott, Makró1 nevű lapra átmásolod a magyar képlet(ek)et tartalmazó cellá(ka)t, ezen a lapon angolul jelennek meg, ezeket kell alkalmaznod a makróban.Szerk.:
"Ezután belementem a programba, ott importálás, és a kódok helyett a képletet másolta/importálta be."
Ezt a mondatot nem értem.
-
Delila_1
veterán
válasz
Brutis
#22358
üzenetére
Azt mondod, hogy a teljes lapokat kell bemásolni. Akkor nem számít az egyes lapokon elfoglalt terület mérete..
3 makrót írtam, e Talloz-zal indíts, ez hívja a Megnyitas-t, az meg a Masolas-t.
A Masolas makróban írd át a Proba.xls-t a saját gyűjtő fájlod nevére.Sub Talloz()
Dim FD, utvonal As String
Set FD = Application.FileDialog(4)
With FD
.AllowMultiSelect = False
.Show
If .SelectedItems.Count = 0 Then
utvonal = ""
Else
utvonal = .SelectedItems(1)
End If
End With
utvonal = utvonal & "\"
Megnyitas utvonal
End SubSub Megnyitas(utvonal)
Dim FN As String
ChDir utvonal
FN = Dir(utvonal & "*.xls", vbNormal)
Do
If FN <> "." And FN <> ".." Then
Workbooks.Open Filename:=utvonal & FN
Masolas FN
End If
FN = Dir()
Loop Until FN = ""
End SubSub Masolas(FN)
Dim lap As Integer, ucso As Integer
ucso = Workbooks("Proba.xls").Sheets.Count '****
For lap = 1 To Sheets.Count
Sheets(lap).Select
ActiveSheet.Copy After:=Workbooks("Proba.xls").Sheets(ucso) '****
ucso = ucso + 1
ActiveWindow.ActivatePrevious
Next
ActiveWindow.Close False
End Sub -
Delila_1
veterán
válasz
botond187
#22353
üzenetére
A lenti képlet 2 betűből, egy 5 jegyű számból, és ismét 1 betűből álló véletlen karakterláncot hoz létre.
=KARAKTER(RANDBETWEEN(65;90)) & KARAKTER(RANDBETWEEN(65;90))& RANDBETWEEN(10000;99999) & KARAKTER(RANDBETWEEN(65;90))
A 2003-as verzióban is lehet alkalmazni a randbetween függvényt, csak be kell kapcsolni hozzá az Analysis ToolPak nevű bővítményt.
-
Delila_1
veterán
válasz
madrol
#22349
üzenetére
Az export lap A2 cellája most ='KÉP KÉSZÍTŐ'!Q2
Mi lenne, ha a végére fűznél valamit, pl. ='KÉP KÉSZÍTŐ'!Q2&"_"& SOR()-1
Akkor nem lenne 2 egyforma ID. A sor() függvény az aktuális sor számát adja.A képkészítő Q oszlopában nem kell a lapra hivatkoznod, hiszen a saját lap celláiból veszi az értékeket. Elég a =HELYETTE(D2;"_";"")&F2 képlet.
-
Delila_1
veterán
válasz
Brutis
#22345
üzenetére
Szükség van az Application.FileDialog-ra, Nem mindig azonos könyvtárból hívod be a fájlokat? Mi a könyvtár útvonala?
Minden füzet összes lapjáról az A1:L43 tartományt kell bemásolnod? Vannak a másolandóban képletek? Azokkal együtt kell másolni, vagy az értéküket?
A gyűjtő füzetben az egyes tartományok egymás alá kerüljenek? Egy előző hsz-ben azt írtad, hogy a munkalapok nevei az A oszlopban legyenek. Ebből az következik, hogy a bemásolt tartományok a B-ben kezdődjenek.
Ha a sok kérdésre válaszolsz, holnap összehozom, feltéve, hogy valaki közben meg nem oldja.
-
Delila_1
veterán
válasz
gaben86
#22336
üzenetére
Private Sub Workbook_BeforeClose(Cancel As Boolean)
If Application.UserName <> "gaben86" Then
If Cells(1, 1).Value = "" Then
MsgBox ("Kilépés elott az A1 cellát ki kell tölteni.")
Cancel = True
End If
End If
End SubA gaben86 helyett a saját felhasználói nevedet írd be.
-
Delila_1
veterán
válasz
madrol
#22330
üzenetére
Azzal csak annyi a baj, hogy bent maradnak a képletek (erőmű), hacsak nem írod felül őket egy irányított beillesztéssel.
Azért megírtam a makrót, az A oszlopban lévő vegyes adatokat írja felül. 16000 sorral 1 mp alatt végez.Sub CsakSzam()
Dim sor As Long, usor As Long, b As Integer
Dim adat As String, szoveg As String
Application.ScreenUpdating = False
usor = Range("A" & Rows.Count).End(xlUp).Row
For sor = 1 To usor
szoveg = ""
adat = Cells(sor, "A")
For b = 1 To Len(adat)
If Mid(adat, b, 1) Like "[0-9]" Then _
szoveg = szoveg & Mid(adat, b, 1)
Next
Cells(sor, "A") = szoveg * 1 '*****************
Next
Application.ScreenUpdating = True
End SubA csillaggal jelzett sort Cells(sor, "B") = szoveg * 1-re átírva a B oszlopba írja a kigyomlált részt.
-
Delila_1
veterán
válasz
madrol
#22328
üzenetére
A 2013-as Excel a Lappy által belinkelt oldal szerint alapból ad megoldást.
Ha alacsonyabb verziót használsz, alkalmazhatod az idézett oldal makróját, vagy ha megadod, hogy melyik oszlopban, honnan kezdve vannak az adataid, én is megírhatom a makrót, ami függvények nélkül írja be az eredményt (hova? esetleg a vegyesen használt számok és betűk eredeti helyére?).
-
Delila_1
veterán
válasz
madrol
#22322
üzenetére
Írtam rá egy függvényt, a neve CsakSzam.
Ha az adatod az A1 cellában van, akkor az =csakszam(A1) függvény megoldja a problémádat.
Function CsakSzam(adat As String)
Dim b As Integer
For b = 1 To Len(adat)
If Mid(adat, b, 1) Like "[0-9]" Then _
CsakSzam = CsakSzam & Mid(adat, b, 1)
Next
CsakSzam = CsakSzam * 1
End Function -
Delila_1
veterán
válasz
Apollo17hu
#22302
üzenetére
A képletekre nyilván szükséged van. Azt teheted meg, hogy azokat a képleteket, amik már megadták az eredményt, felülírod az értékükkel (másolás, irányított beillesztés). Csak néhány utolsó sorban maradjanak meg a képletek, hogy az adatsorok bővülésekor legyen mit másolni.
-
Delila_1
veterán
válasz
Apollo17hu
#22300
üzenetére
Képek, rajzelemek?
Egy új füzetbe minden lapnak csak azt a részét másold át, amelyik adatokat tartalmaz, és úgy nézd meg a méretet.
-
Delila_1
veterán
A szöveg típusú adatokat így rendezi, az egyes karakterek ASCII kódjainak megfelelően.
Ki lehet cselezni egy segédoszloppal, ami az eredeti adatok elején lévő számokat tartalmazza.Vegyük, hogy az eredeti adatok az A oszlopban vannak. A segédoszlopban a képlet
=BAL(A1;SZÖVEG.KERES("_";A1)-1)*1A tartományt, ami tartalmazza az eredeti-, és a segédoszlopot is, a képletet tartalmazó oszlop szerint rendezed.
-
Delila_1
veterán
válasz
Mittu88
#22250
üzenetére
Jelöld ki a tartományt, és indítsd a makrót.
Sub Konyveloi()
Dim cella As Object
For Each cella In Selection
If cella.NumberFormat = "_(* #,##0.00_);_(* (#,##0.00);_(* ""-""??_);_(@_)" Then _
cella.NumberFormat = "General"
Next
Range("A1:F17").Select
Columns("A:A").EntireColumn.AutoFit
End Sub -
Delila_1
veterán
válasz
Mauzes
#22242
üzenetére
Magyar Excelem van.
Behívod a fájlt. Beírod a két képletet, ahova kell. Lemásolod, és látod, hogy hibás-e.
Ha nem, indítod a makrórögzítést. Ráállsz az első képletre a szerkesztőlécen, Enter. Ráállsz a másodikra, újabb Enter. Rögzítés vége. A füzetet makróbarátként mented (2007-es verziótól kezdve, alatta sima mentés).Legközelebb behívod a fájlt, és indítod a makrót. Alt+F8-ra bejön az ablak, ahonnan indíthatod.
-
Delila_1
veterán
-
Delila_1
veterán
-
Delila_1
veterán
válasz
slashing
#22195
üzenetére
Szívesen.
Igen, a WS változó az aktív lap nevét tárolja, és ezt adja át a Pathname változónak is.
Kiteszed a gombot az első 6120-... lapra, hozzárendeled a ProcessFiles makrót. A gombon a szöveg olyasmi lehet, hogy Adatok bemásolása. Ezt a gombot másolod az összes többi lapra. Bárhonnan indítod, mindig a saját könyvtárából hívja be a fájlokat. -
Delila_1
veterán
válasz
slashing
#22192
üzenetére
A DoWork makró End With fölötti sora legyen
Workbooks(WBN).Sheets(WS).Range("A" & usor).PasteSpecial Paste:=xlPasteAll, Transpose:=True
Szerk.:
Inkább leírom a 2. makrót is.
Sub DoWork(wb As Workbook, WBN, WS)
Dim usor As Long, cell As Range, selectRange As Range
With wb
usor = .Sheets("Munka1").Range("A" & Rows.Count).End(xlUp).Row
For Each cell In .Sheets(1).Range("A3:A" & usor)
If (cell.Value <> "") Then
If selectRange Is Nothing Then
Set selectRange = cell
Else
Set selectRange = Union(cell, selectRange)
End If
End If
Next cell
usor = Workbooks(WBN).Sheets(WS).Range("A" & Rows.Count).End(xlUp).Row + 1
selectRange.Copy
Workbooks(WBN).Sheets(WS).Range("A" & usor).PasteSpecial Paste:=xlPasteAll, Transpose:=True
End With
End Sub -
Delila_1
veterán
válasz
slashing
#22192
üzenetére
Próba nélkül az első makró (nálam most éppen bedöglött az Excel).
Sub ProcessFiles()
Dim Filename, Pathname As String, WBN As String, WS As String
Dim wb As Workbook
Application.ScreenUpdating = False
WBN = ActiveWorkbook.Name
WS = ActiveSheet.Name
Pathname = "C:\teszt\" & WS & "\"
Filename = Dir(Pathname & "*.xlsx")
Do While Filename <> ""
Set wb = Workbooks.Open(Pathname & Filename)
DoWork wb, WBN, WS
wb.Close SaveChanges:=True
Filename = Dir()
Loop
Application.ScreenUpdating = True
End SubBármelyik oldalról indítva elméletileg a saját könyvtárából hívja be, és másolja a füzetek adatait.
-
Delila_1
veterán
válasz
slashing
#22185
üzenetére
Akkor ugorj neki újra.
1 db fájlba, különböző lapokra akarod bemásolni több füzet lapjainak a tartalmát?
A gyűjtő füzet lapjait úgy nevezted el, hogy a név egyúttal a mappa neve, ahonnan be akarod gyűjteni az adatokat?Ahonnan másolsz, azok a füzetek hány lapot tartalmaznak?
-
Delila_1
veterán
válasz
slashing
#22183
üzenetére
Legegyszerűbb, ha minden füzetben a másolandó oldalt az első helyre mozgatod. Ekkor a DoWork makróban a
usor = .Sheets("Munka1").Range("A" & Rows.Count).End(xlUp).Row
sor helyett
usor = .Sheets(1).Range("A" & Rows.Count).End(xlUp).Row
kerül, a
Workbooks(WBN).Sheets("6120-1121 PCB OLDAL").Range("A" & usor).PasteSpecial Paste:=xlPasteAll, Transpose:=True
helyett pedig
Workbooks(WBN).Sheets(1).Range("A" & usor).PasteSpecial Paste:=xlPasteAll, Transpose:=True
Az összegző füzetben is első legyen a lap, ahova bemásolod a többi füzetből az adatokat.
-
Delila_1
veterán
válasz
slashing
#22169
üzenetére
Az előbbi makró csak a megnyitott fájl adatainak a másolását oldotta meg. A mostaniban a fájlok megnyitása, és zárása is szerepel.
A Pathname változóban írd át az útvonalat. Nem érdemes az összefűzendő fájlokat és azt, amelyikben összefűzöd, azonos mappában tartani.
Sub ProcessFiles()
Dim Filename, Pathname As String, WBN As String
Dim wb As Workbook
WBN = ActiveWorkbook.Name
Pathname = "F:\Eadat\valami\"
Filename = Dir(Pathname & "*.xls")
Do While Filename <> ""
Set wb = Workbooks.Open(Pathname & Filename)
DoWork wb, WBN
wb.Close SaveChanges:=True
Filename = Dir()
Loop
End SubSub DoWork(wb As Workbook, WBN)
Dim usor As Long, cell As Range, selectRange As Range
With wb
usor = .Sheets("Munka1").Range("A" & Rows.Count).End(xlUp).Row
For Each cell In .Sheets(1).Range("A3:A" & usor)
If (cell.Value <> "") Then
If selectRange Is Nothing Then
Set selectRange = cell
Else
Set selectRange = Union(cell, selectRange)
End If
End If
Next cell
usor = Workbooks(WBN).Sheets("mega").Range("A" & Rows.Count).End(xlUp).Row + 1
selectRange.Copy
Workbooks(WBN).Sheets("mega").Range("A" & usor).PasteSpecial Paste:=xlPasteAll, Transpose:=True
End With
End Sub -
Delila_1
veterán
válasz
slashing
#22169
üzenetére
[Sub it()
Dim cell As Range, usor As Long
Dim selectRange As Range
usor = Sheets("Munka1").Range("A" & Rows.Count).End(xlUp).Row
For Each cell In ActiveSheet.Range("A3:A" & usor)
If (cell.Value <> "") Then
If selectRange Is Nothing Then
Set selectRange = cell
Else
Set selectRange = Union(cell, selectRange)
End If
End If
Next cell
usor = Sheets("mega").Range("A" & Rows.Count).End(xlUp).Row + 1
selectRange.Copy
Sheets("mega").Range("A" & usor).PasteSpecial Paste:=xlPasteAll, Transpose:=True
End Sub -
Delila_1
veterán
válasz
cadgers
#22158
üzenetére
A1-ben van az első érvényesítés, ahol az 1-4 számok közül választhatsz.
A másik érvényesítéshez a G1:G8 tartományba bevittem a számokat 1-től 8-ig. Az érvényesítésben itt is lista a megengedett érték, mint az elsőnél, a forrás pedig
=HA(A1=1;$G$1:$G$2;HA(A1=2;$G$3:$G$4;HA(A1=3;$G$5:$G$6;$G$7:$G$8)))
-
Delila_1
veterán
válasz
King Unique
#22141
üzenetére
Szívesen.
-
Delila_1
veterán
válasz
King Unique
#22139
üzenetére
Úgy is jó, de inkább egy feltételbe tenném.
if jelölő=true then
ide jön a minden max értéket színező ciklus
else
ide meg az, ami az első megtaláltat színezi
end ifA jelölő szó helyett a CheckBox-od nevét írd be.
A formon lévő vezérlőkhöz nem modulba írjuk a makrókat. Vezérlőn dupla klikk előhozza a form modullapját, és még a hozzá tartozó makró kezdő-, és utolsó sorát is beírja.
A fenti makrót annak a gombnak a click eseményéhez kell beírnod, ami a max értékeket színezi.
-
Delila_1
veterán
válasz
King Unique
#22137
üzenetére
Teheted UserFormra is, nem szükséges a füzet lapjára tenni. A feladatban nem szerepelt a vezérlők helye.
-
Delila_1
veterán
válasz
King Unique
#22135
üzenetére
A gombokat és a comboboxot neked kell bevinned a lapra.
Nincs 2013-as verzióm, de valószínű, hogy abban is a Fejlesztőeszközök | Beszúrás | ActiveX -ben találod meg.Az egyes vezérlők nevét (Name) is add meg a tulajdonságuknál úgy, ahogy a makrókat hozzájuk rendeltem.
-
Delila_1
veterán
válasz
King Unique
#22133
üzenetére
A füzetben, amit küldtem tegnap, megtalálod.

-
Delila_1
veterán
válasz
King Unique
#22131
üzenetére
Fejlesztőeszközök | Vezérlők | Tulajdonságok.
Ilyenkor a Tervező mód legyen érvényben. Ha kész, kapcsold ki a tervező módot.
Új hozzászólás Aktív témák
- Samsung Galaxy A56 - megbízható középszerűség
- Luck Dragon: Asszociációs játék. :)
- KAÜ/Ügyfélkapu – már elérhető a kétfaktoros hitelesítés
- Battlefield 6
- Samsung kuponkunyeráló
- Linux haladóknak
- Milyen alaplapot vegyek?
- Linux kezdőknek
- DUNE médialejátszók topicja
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- További aktív témák...
- AKCIÓ! Apple MacBook Pro 16 M4 Max 36GB RAM 1TB SSD macbook garanciával hibátlan működéssel
- GYÖNYÖRŰ iPhone 13 mini 256GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3904, 100% Akksi
- magyar billentyűzet - 172 - Lenovo Legion Pro 7 (16IAX10H) - Intel Core U9 275HX, RTX 5080
- DELL PowerEdge R640 rack szerver - 2xGold 6138 (20c/40t, 2.0/3.7GHz), 64GB RAM,4x1G, H730 1GB, áfás
- HP 150W töltők (19.5V 7.7A) kis kék, kerek, 4.5x3.0mm
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest








![;]](http://cdn.rios.hu/dl/s/v1.gif)




