- Fórumok
- OS, alkalmazások
- Microsoft Excel topic
- (kiemelt téma)
-
29800 - 29701
54978 - 54001 54000 - 52001 52000 - 50001 50000 - 48001 48000 - 46001 46000 - 44001 44000 - 42001 42000 - 40001 40000 - 38001 38000 - 36001 36000 - 34001 34000 - 32001 32000 - 31901 31900 - 31801 31800 - 31701 31700 - 31601 31600 - 31501 31500 - 31401 31400 - 31301 31300 - 31201 31200 - 31101 31100 - 31001 31000 - 30901 30900 - 30801 30800 - 30701 30700 - 30601 30600 - 30501 30500 - 30401 30400 - 30301 30300 - 30201 30200 - 30101 30100 - 30001 30000 - 29901 29900 - 29801 29800 - 29701 29700 - 29601 29600 - 29501 29500 - 29401 29400 - 29301 29300 - 29201 29200 - 29101 29100 - 29001 29000 - 28901 28900 - 28801 28800 - 28701 28700 - 28601 28600 - 28501 28500 - 28401 28400 - 28301 28300 - 28201 28200 - 28101 28100 - 28001 28000 - 26001 26000 - 24001 24000 - 22001 22000 - 20001 20000 - 18001 18000 - 16001 16000 - 14001 14000 - 12001 12000 - 10001 10000 - 8001 8000 - 6001 6000 - 4001 4000 - 2001 2000 - 1
-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Tabletek, E-bookok Nyomtatók, szkennerek PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
-
Frissítve: 2023-11-13 08:31 Téma összefoglaló
Új hozzászólás Aktív témák
-
sztanozs
veterán
A hivatalos Excel (XML) szabványban benne van a rendes sor/oszlop alapú formázás, de plusz számítási igény miatt sajna ezt nem használja az excel (illeve, ha van valami módosítás, akkor a cella alapú formázás a fallback)... Azért hasznos is tud lenni a feltételes formázás.
Most is épp egy többszörös szűrés alapú kiválasztásos workseet-et kellett összedobnom, ahol named range alapú (erősen számolós) feltételes formázás van. Enélkül egyszerűen nem lehet rendesen kitölteni a munkalapot. -
Louro
őstag
Sokan sorokat és oszlopokat formáznak. Duuuurva.
Feltételes formázás esetén is általában sort vagy oszlopot jelölnek meg.Ezek olyan durván hazavágják, hogy rossz nézni. 20-30 megás fájlt megnyitva majd értékként átmásolva az adatokat és lementve sokszor nem felére, fél megákra le tudom csökkenteni a fájlméreteket. Színezésnek van előnye, de sajnos hátránya is és elég sokan úgy használnak Excel-t, hogy igazából szájhagyomány útján tanulták. Egy-egy gyorstalpalós tanfolyam sokat segítene az irodistákon. Néha hányni is tudnék a színkavalkádokon.
-
sztanozs
veterán
Ezek mind okozhatnak jelentős fájlméret növekedést:
- formázás (főleg az új excelben, nagyon sok sor és oszlop van)
- sok pivot tábla (minden pivot tábla számára az excelben van egy kis "mini adatbázis")
- named range (gyakorlatilag a range értékeinak másolata még egyszer a táblűban)
- rejtett mezők/munkalapok (bármi lehet bennük/rajtuk)
- beillesztett képek vagy objektumok (ezek lehetnek akármekkorák) -
Louro
őstag
Az igazat megvallva én nem értem. Ha az kell, hogy miképp lehet azt megmondani, hogy melyik szám mennyiszer került kihúzásra, akkor COUNTIF/DARABTELI függvénnyel könnyen előállítható.
Csinálsz egy 1-90-ig egy listát az M oszlopba. N oszlopba pedig, az 1-es mellé: =DARABTELI(itt jelöld ki az 5 oszlopot, amiben a húzott számok vannak;kattints az 1-es értéket tartalmazó cellára) Majd másold lefelé a függvényt és meglesz.
-
zulu_mester
tag
Sziasztok!
Abban szeretném a segítségeteket kérni, hogy egy adott adathalmazból (1957-2012 közti heti lottószámok) hogyan lehet tól-ig intervallumokat meghatározni? Milyen függvény/képlet van rá excellben?
Előre is köszönöm! -
baderoli
tag
Sziasztok! Sajnos nem találtam megoldást a fileméret duplázódására a neten. Esetleg valakinek ötlete?
-
Delila_1
veterán
-
tzetko
csendes tag
-
Sátán44
addikt
-
Delila_1
veterán
-
bsh
addikt
-
Chase
tag
THX

-
Delila_1
veterán
-
bsh
addikt
-
bsh
addikt
valami ilyesmi?
Private Sub Worksheet_Change(ByVal Target As Range)
If (Target.Column > 2) And (Target.Column < 25) And (Target.Row > 2) And (Target.Row < 28) Then
If (XCount(Me.Range(Cells(Target.Row, 3), Cells(Target.Row, 25))) > 2) Or (XCount(Me.Range(Cells(2, Target.Column), Cells(28, Target.Column))) > 2) Then
Target.Value = ""
MsgBox ("Már van két X az adott sorban vagy oszlopban!")
End If
End If
End Sub
Private Function XCount(XRange As Range) As Long
XCount = 0
For Each Cell In XRange
If Cell.Value <> "" Then XCount = XCount + 1
Next
End Function -
batmanéhes
tag
-
Delila_1
veterán
-
bsh
addikt
-
m.zmrzlina
senior tag
Rossz hírem van, a 2013-as Office-ból kivették ezt az opciót.

-
Sátán44
addikt
-
Delila_1
veterán
A másik lapon (Munka2) lévő gomb click eseményébe írd be azt, amit az elsőn lévő gomb eseményébe írnál.

Private Sub CommandButton2_Click()
Sheets("Munka1").Range("A1") = "asdf"
End SubAz első lap gombjának az eseménye is tartalmazhatja ugyanezt, csak ott a lapra történő hivatkozást felesleges megadni.
-
Sátán44
addikt
-
Szicskeee
tag
-
Delila_1
veterán
-
Delila_1
veterán
Private Sub CommandButton14_Click()
Dim iRet As Integer
Dim strPrompt As String
Dim strTitle As String
strPrompt = "Ki szeretnéd nyomtatni xyz prémium adatlapját??"
strTitle = "Prémium"
iRet = MsgBox(strPrompt, vbYesNo, strTitle)
If iRet = vbNo Then
MsgBox "Vége!"
Else
Worksheets("Prem1").Range("$A$1:$O$39").PrintOut Copies:=1, Collate:=True
End If
End SubSzerk: elkéstem.
-
Szicskeee
tag
-
bsh
addikt
-
Szicskeee
tag
Private Sub CommandButton14_Click()
Dim iRet As Integer
Dim strPrompt As String
Dim strTitle As String
strPrompt = "Ki szeretnéd nyomtatni xyz prémium adatlapját??"
strTitle = "Prémium"
iRet = MsgBox(strPrompt, vbYesNo, strTitle)
If iRet = vbNo Then
MsgBox "Vége!"
Else
Worksheets("Prem1").Activate
Range("A1:O39").Select
Selection.PrintOut Copies:=1, Collate:=True
End If
End SubValai meg tudja mondani miert kapok hibat Range("A1: O39").Select -nel?
Annyi a lenyeg, hogy 1 masik sheet-rol akarom kinyomtatni A1: O39 ig a cellakat.
Probalkoztam mar azzal is, hogy a masik sheeten (Prem1) csinaltam egy nyomtati gombot. es itt az else be ezzel a parancsal : Call Prem1.CommandButton1_Click meghivtam de az is hibat adott. -
Sátán44
addikt
-
sztanozs
veterán
-
bteebi
veterán
Vagy csak simán Ctrl+F3-at nyom. Vagy kijelöli a tartományt, és a név mezőbe (bal oldalon, ahol a te screenshotodon az "A1" kiírás látszik) beírja a kívánt nevet, és entert nyom. Ha ugyanitt később rákattint a nyílra, akkor megnézheti az összes elnevezett tartományt.
-
bteebi
veterán
Nem kell azonosnak lennie. Nyilván időt veszít azzal, hogy minden sorban a UsedRange széléig megy, de még mindig sokkal jobb, mintha a teljes sort (256 vagy 16384 cella) végignézné. De akár azt is megtehetné, hogy minden sornak megnézi a jobb szélét, és csak addig menne a makró:
oszlopig = Cells(sor, Columns.Count).End(xlToLeft).Column
Persze ha teljesen fix a táblázat, akkor jó (gyorsabb), ha csak a fix tartományok vannak megadva.
-
sztanozs
veterán
-
Chase
tag
-
Sátán44
addikt
-
Delila_1
veterán
-
Szicskeee
tag
Sziasztok !
Van 1 gombom ami 1 case-bol all. ennek a vegere szeretnek egy olyat hogy felugordjon 1 ablak es megkerdezze,hogy ki szeretnem nyomtatni a KIJELOLT cellakat vagy nem. Ha pedig igent nyomok akkor nyomtassa ki.
Segitsegetek elore is koszonom.

-
m.zmrzlina
senior tag
-
Chase
tag
Újabb fajta Excel-ben (2013) meg lehet azt oldani valahogyan, hogy több file-t egy Excel-ben nyisson meg, mint ahogy a régebbi verziókban (pl: 2007)?
Egylőre ott tartok, hogy ha Open-nel megnyitok egy második file-t, akkor nyit neki teljesen új Excel-t, ahány file kinyitva, mindhez külön menü-sor, külön menü-szalag, stb...
A régi verziókban meg a már futó Excel-en belül nyitott minden file-nak egy új ablakot, és maradt egy menü-sor, egy menü-szalag, stb... -
tzetko
csendes tag
Szia delila
Segítséget szeretnék tőled kérni.
A fügvényvarázslóban hogyan kell leíró szöveget készíteni -
Sátán44
addikt
-
sztanozs
veterán
T
ök jó hogy megkaptad a makróst isja az nem neked ment
Data validation nekem most egyszerűbb lett - némi megkötéssel:
- Minden óra elé kell a nap
- Kell egy mező amiben az 'x' van és mellette egy ami üres (sárgával alul, a sor eltüntethető)C2-t ki kell jelölni és a következő Named Range-et kézzel létre hozni:
SelectX =IF(COUNTIFS(Sheet1!C$2:C$28,"x",Sheet1!$A$2:$A$28,Sheet1!$A31)<2,Sheet1!$C$31,Sheet1!$D$31)Utána kijelölni az adatmezőket -> Data Validation -> List
=SelectXIgnore blank pipa kivevendő:

-
Delila_1
veterán
Most gyorsabb lesz. Folytatnod kell az elso = 8: ucso = 9: GoSub Atir típusú sorokat.
Az oszlopok törlése részbe a saját törlendő oszlopaidat írd be.Sub mm()
Dim lap As Integer, nev As String, utvonal As String
Dim elso As Long, ucso As Long
utvonal = "D:\kiment\"
For lap = 1 To Worksheets.Count
If Sheets(lap).Range("B1") = "ez kell" Then
Sheets(lap).Select
elso = 8: ucso = 9: GoSub Atir
elso = 12: ucso = 14: GoSub Atir
elso = 16: ucso = 17: GoSub Atir
elso = 20: ucso = 22: GoSub Atir
'*** stb ***
'oszlopok törlése
Range("B:D,F:F").Delete Shift:=xlToLeft
nev = ActiveSheet.Name
ActiveSheet.Copy
ActiveWorkbook.SaveAs Filename:=utvonal & nev & ".xlsx"
ActiveWindow.Close
End If
Next
Exit Sub
Atir:
Range("E" & elso & ":W" & ucso).Copy
Range("E" & elso).PasteSpecial xlPasteValues
Return
End Sub -
Sátán44
addikt
-
sztanozs
veterán
-
Sátán44
addikt
-
Delila_1
veterán
-
Zimmy88
tag
Szia!
Köszi a tippet! Kipróbáltam, és lefuttattam a következő makrót. Viszont két dolog kellene még bele:
az egyik, hogy először kijelölje azokat a munkalapokat, amin végre kell hajtani a műveletet (B1 cella ha adott szöveget (pl "ezkell") tartalmaz, csak akkor kell rögzíteni az értékeket és különmenteni a fájlt),
a másik, pedig hogy értékrögzítés után, kimentés előtt ki kellene törölni pár felesleges oszlopot az E és a W közül (oszlop sorszámát tudom megadni).
Más: elég lassan futott a makró, 18-20 másodpercig tartott, mire "kidobott" egy kész munkalapot külön fájlba. Mivel lehetne gyorsítani esetleg? 30-40 munkalapnál ez elég hosszú idő...Sub mm()
Dim lap As Integer, r As Range, nev As String, utvonal As String
Dim terulet As Range
utvonal = "D:\kiment\"
For lap = 1 To Worksheets.Count
Sheets(lap).Select
Set terulet = Range("E8:W9,E12:W14,E16:W17,E20:W22,E25:W30,E33:W35,E37:W39,E41:W43,E45:W46,E49:W50,E52:W59,E62:W67,E69:W72,E75:W76,E81:W82,E85:W90,E93:W95,E98:W100,E102:W103,E105:W105,E107:W109,E112:W117,E120:W120,E123:W124,E129:W130,E132:W132")
For Each r In terulet
Range(r.Address) = r.Value
Next
nev = ActiveSheet.Name
ActiveSheet.Copy
ActiveWorkbook.SaveAs Filename:=utvonal & nev & ".xlsx"
ActiveWindow.Close
Next
End Sub -
bteebi
veterán
-
Delila_1
veterán
Nem érdemes a teljes sorokat megadni, mert egy halom üres cellán is végig kellene mennie a ciklusnak. Ehelyett területet adj meg.
Sub mm()
Dim lap As Integer, r As Range, nev As String, utvonal As String
Dim terulet As Range
utvonal = "C:\Temp\"
For lap = 1 To Worksheets.Count
Sheets(lap).Select
Set terulet = Range("A4:J4,A9:J11,A16:J16")
For Each r In terulet
Range(r.Address) = r.Value
Next
nev = ActiveSheet.Name
ActiveSheet.Copy
ActiveWorkbook.SaveAs Filename:=utvonal & nev & ".xlsx"
ActiveWindow.Close
Next
End Sub -
Delila_1
veterán
Az AK3 képlete legyen
=HA(DARABTELI(F3:AJ3;"x")>0;DARABTELI(F3:AJ3;"x");"")
az AL3-é pedig
=HA(DARABTELI(F3:AJ3;"<>x")-DARABTELI(F3:AJ3;"")>0;DARABTELI(F3:AJ3;"<>x")-DARABTELI(F3:AJ3;"");"")
Az AK3-ban próbáltam az egyszerűbbnek tetsző HAHIBA függvénnyel megoldani, de ledolgozott napok esetén az üres string helyett 0 értéket ad.
Figyelj, hogy a többi hónapban a megfelelő területet add meg a képletekben.
-
Zimmy88
tag
Sziasztok!
Egy két lépésből álló feladat gyorsítására szeretnék makrót, de még nem volt időm jobban elmélyedni a témában.
A feladat a következő:
Adott egy excel fájl, sok (30+) munkalappal. Első körben ezek egy részének (a B1 cellában található szöveg alapján szűrhető) megadott sorszámú soraiban a képletet értékre kellene cserélni (tehát nem az egész munkalapon).
A második lépés pedig ezeknek a (részben rögzített értékes) munkalapoknak a kimentése külön excel fájlba, az adott munkalap nevén.Eddigi ismereteim szerint az alábbi részletet raktam össze (nem biztos hogy jó):
Sub SumIfFormulaToValue()
Rows("8:9,12:14,16:17,20:22,25:30,33:35,37:39,41:43,45:46,49:50,52:59,62:67,69:72,75:76,81:82,85:90,93:95,98:100,102:103,105:105,107:109,112:117,120:120,123:124,129:130,132:132").Select
For Each r In Selection.Areas
r.Select
Selection.Formula = Selection.Value
NextEnd Sub
Előre is köszi a segítséget!
-
MCGaiwer
addikt
-
Delila_1
veterán
Jogos! Én is emlékeztem rá, de lusta voltam kikeresni.

-
m.zmrzlina
senior tag
Bocs, de te olvsod is ezt a fórumot, vagy csak írod?

Erre a kérdésedre itt már egyszer megkaptad ugyanezt a választ.

-
poffsoft
veterán
-
bsh
addikt
sehol nem írta, hogy "időnként működik". ha névütközések vannak, akkor ez sosem fog működni, mivel le sem fordul úgy a program. ha nincs ütközés, akkor lefordítja és akkor mindig működni is fog.
ebből következően ha más fájlban működik ugyanez a kód, akkor ott abban a fájlban a modul neve nem "valasz". -
bteebi
veterán
-
Delila_1
veterán
-
Delila_1
veterán
Közben összeállítottam egy egyszerűbbet, egész évre.
Vigyázz, a 2. sorban 2013-as dátumok szerepeltek. Fontos, hogy az aktuálisak legyenek ott a feltételes formázás miatt, ami a hétvégék, ünnepnapok, és áthelyezett munkanapok hátterét adja.
Jövőre a Munka1 lapon át kell írnod a dátumokat, vagy csak folytatnod a listákat a 2016-osakkal.
-
coldfirexx
tag
-
MCGaiwer
addikt
-
bsh
addikt
a modul neve ugyanaz (valasz) mint a változóé.
-
bteebi
veterán
Érdekes. Szemre jónak tűnt, ki is próbáltam, és nekem működött. Mondjuk neked is volt, ahol jó volt...
-
coldfirexx
tag
Sziasztok!
Egy VBA kérdésem lenne.
Van egy kódom ami message box segítségével eldönti hogy automatikus vagy manuális lesz a folyamat:
Sub AUTOMANUAL()
valasz = MsgBox("Automatikusan futtatja a riportot?", vbYesNo)
If valasz = vbNo Then
Sheets("ZUTERT").Visible = TrueElse
Sheets("ZUTERT").Visible = False
End If
End SubA probléma hogy a msg boxnal kiakad és a következő hibát dobja:

Másik fájlban ugyanez működik!
Mi lehet a baj?
-
Delila_1
veterán
-
bteebi
veterán
Megvan a hiba, bocs. Természetesen user error, méghozzá a hülyébb fajtából B. A 3. sortól kellett volna kezdeni
. A 2. sor üres volt, nem csoda, hogy nem működött. Most már viszont jó
. Ahogy keresgéltem közben a megoldást, legalább annyi kiderült, hogy egy On Error Resume Next nem árt a makróba
. -
poffsoft
veterán
Option Explicit
Sub kivalaszt()
Dim ar As String, lastrow As Double, lr As Double, sor As Double
lastrow = Sheets("forras").UsedRange.Rows.Count
lr = Sheets("adat").UsedRange.Rows.Count
On Error Resume Next
For sor = 2 To lr
ar = Application.WorksheetFunction.VLookup(Sheets("adat").Cells(sor, 1), Sheets("forras").Range("A1:B" & lastrow), 2, False)
If Err.Number <> 0 Then ar = "'#HIÁNYZIK"
Sheets("adat").Cells(sor, 2) = ar
Next
End Subvalójában nem találja a keresett adatot a vlookup...
-
bteebi
veterán
Úgy működik. Lehet, hogy megpróbálom kerülőúton úgy megcsinálni, hogy a képletet írja a cellába (és az majd visszaadja a helyes értéket), de jobb lenne, ha eleve csak az érték kerülne bele.
-
m.zmrzlina
senior tag
-
bteebi
veterán
Sajnos így is ugyanaz a hiba. Mindenesetre akkor - látszólag - szintaktikailag rendben van, amit írtam. Végiggondolom még egyszer, hogy mi lehet a hiba oka, de egyelőre elég tanácstalan vagyok, mert látszólag szerintem rendben van a kód.
-
m.zmrzlina
senior tag
Lehet, hogy az adat lapodon lévő néhány cellában van egy-két nem kinyomtatható karakter (pl:szóköz vagy aposztróf). Próbáld ki, hogy lefut-e így:
Sub kivalaszt()
Dim ar As String, lastrow As Double, lr As Double, sor As Double
Dim tiszta As String
lastrow = Sheets("forras").UsedRange.Rows.Count
lr = Sheets("adat").UsedRange.Rows.Count
For sor = 2 To lr
tiszta = Application.WorksheetFunction.Trim(Sheets("adat").Cells(sor, 1))
ar = WorksheetFunction.VLookup(tiszta, Sheets("forras").Range("A1:B" & lastrow), 2, False)
Sheets("adat").Cells(sor, 2) = ar
Next
End Sub -
bteebi
veterán
Sziasztok!
Van egy Excel file két munkalappal ("adat" és "forras"), az "adat" munkalapra szeretnék másolni a "forras" lapról úgy, hogy az "adat" 1. oszlopában lévő érték alapján bemásolok a 2. oszlopba egy értéket a "forras" lap 2. oszlopából, amihez az FKERES-t használnám. Mindkét munkalapon változó nagyságú tartomány van, viszont az "adat" 1. oszlopában szereplő érték a "forras" 1. oszlopában biztos, hogy megtalálható (és csak egyszer).
Sub kivalaszt()
Dim ar As String, lastrow As Integer, lr As Integer, sor As Integer
lastrow = Sheets("forras").UsedRange.Rows.Count
lr = Sheets("adat").UsedRange.Rows.Count
For sor = 2 To lr
ar = WorksheetFunction.VLookup(Sheets("adat").Cells(sor, 1), Sheets("forras").Range("A1:B" & lastrow), 2, False)
Sheets("adat").Cells(sor, 2) = arErre run-time errort kapok (1004): "WorksheetFunction osztály VLookup tulajdonsága nem érhető el." Vajon mi lehet a hiba? Előre is köszönöm a segítségeteket!

-
MCGaiwer
addikt
Szia, anonimizáltam.
(nekem vmiért nem sikerül normálisan, de valószínűleg csak én vagyok a béna)
-
Fferi50
Topikgazda
-
MCGaiwer
addikt
-
Fferi50
Topikgazda
Szia!
"Egy olyan kimutatást kellene csinálnom, ami gombnyomásra összesíti az adott ember egész éves munkanapjait, és mutatja, hogy bizonyos hónapokban mennyit volt távol."
Próbálkoztál már a kimutatással? Nagyon sokféle lehetőséget rejt magában. Excel verzió függő a varázsló, de mindegyikben van (legalábbis 2010-ig).
Oldal mezőnek (vagy szűrőnek) felvenném a dolgozók nevét tartalmazó oszlopot.
Oszlopcimke az év, a hónap és a nap.
Lehet, hogy előtte a "fejléc" sorokat 3 szintűvé kellene tenni az előzőek szerint.De ha felteszel valahova egy pár soros kitalált neveket tartalmazó táblát, biztosan lesz, aki gyakorlati példát is csinál számodra.
Üdv.
-
MCGaiwer
addikt
-
karlkani
aktív tag
-
Maximusz
aktív tag
-
Delila_1
veterán
-
Maximusz
aktív tag
-
Maximusz
aktív tag
Sziasztok!
egy elég alap dolog okoz fennakadást számomra, és az a dühítő, hogy nem tudom mi lehet a gond.
A feladat:
A1-es cellában egy időpont: 09:33:33.912
A2-es cellában egy másik időpont: 09:33:34.877a kettő közötti különbségre lenne szükségem másodpercben, de a "=A2-A1*86400" nem működik - szerintetek mivel tudnám ezt megoldani?
köszi
-
sztanozs
veterán
Mi ez a kígyó kód? Hibák:
1) használj kód beillesztést
2) miért nem FOR cilkust használsz
3) miért kell hátul tesztelni (igazából nem is hátul, hanem ciklusban, ha elöl is tesztelsz
4) mindent letesztelsz mindennel. Vsz az a probléma, hogy az utolsó tesztelés nem ad vissza semmit, mivel a j. (jé-edik) mezőbe rakod a megjegyzést, nem az i.(í-edik) mezőbe.
5) Dim i, j As Integer - ez csak a j változót deklarálja Integerre, i az Variant lesz.Sub Makró_hasonlító()
Dim i, j
For i = 2 To 833
Do
For j = 2 To 833
If (Cells(i, 1).Value = Cells(j, 6).Value) And (Cells(i, 2).Value = Cells(j, 7).Value) Then
Range("I" & i).Value = "Van egyezés"
Exit Do
End If
Next
Loop While False
Range("I" & i).Value = "Nincs egyezés"
Next
End Sub -
cs_dy
tag
Sziasztok!
Adott egy makró és adatbázis. Az adatbázis:
1. és a 3. oszlopban: pl nevek szerepelnek: De eltérnek.
a 2 és a 4-es oszlopban számok szerepelnek: pl. a nevekhez tartozó nyereményA különbséget akarom megtalálni. Ez a kód lefut de egyenlőre nem csinál semmit. A Cells-ek helyett a Range-el mindenhova "Nincs egyezést" tett.
Mi lehet a megoldása?
Köszönöm előre is a segítséget.
Sub Makró_hasonlító()
Dim i, j As Integer
i = 2
j = 2
Do Until j >= 883
Do Until i >= 883
If (Cells(i, 1).Value = Cells(j, 6).Value) And (Cells(i, 2).Value = Cells(j, 7).Value) Then
Range("I" & j).Value = "Van egyezés"
Else: Range("I" & j).Value = "Nincs egyezés"
End If
j = j + 1
If j >= 883 Then
Exit Do
End If
Loop
j = 2
i = i + 1
If i = 883 Then
Exit Do
End If
Loop
End Sub -
Delila_1
veterán
Az
If Target.Column <> 2 Then Exit Sub
sorban a 2 helyett írj 15-öt, és a
Target.Offset(0, -1).Value = Now()
sorban a -1 helyett -14-et.
-
lizakattila
senior tag
Sziasztok!
Kicsit visszakeresve megtaláltam a számomra megfelelő megoldást (egy makró formájában, aminek a lényee, hogy, ha egy adott oszlop adott sorában lévő cellát kitöltök, akkor az A oszlop ugyanazon sorába írja be a most függvényt, és azt ne frissítse):
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 2 Then Exit Sub
If Target.Value <> "" Then
Application.EnableEvents = False
Target.Offset(0, -1).Value = Now()
Application.EnableEvents = True
End If
End SubA kérdésem az lenne, hogy ebben mit kell módosítanom, ha azt akarom, hogy az "A" oszlopba akkor írja be a most függvényt, ha az "O" oszlopban lévő cellába írok be értéket?
-
Miv
tag
-
sztanozs
veterán
Makróval a legegyszerűbb:
Sub Feltolt()
Dim s As Worksheet
Dim r(), ix
ReDim r(1 To ActiveWorkbook.Worksheets.Count, 1 To 2)
ix = 1
For Each s In ActiveWorkbook.Worksheets
If s.Type = xlWorksheet Then
r(ix, 1) = s.Name
r(ix, 2) = s.Cells(1, 1).Value2
ix = ix + 1
End If
Next
Set s = ActiveWorkbook.Worksheets.Add(Before:=ActiveWorkbook.Worksheets(1))
s.Range(s.Cells(1, 1), s.Cells(ActiveWorkbook.Worksheets.Count - 1, 2)).Value2 = r
End Sub -
Miv
tag
Sziasztok!
Adott egy kb. 100 munkalapot tartalmazó fájl. A feladatom az lenne, hogy egy új munkalapra kilistázzam a munkalapok nevét, és mindegyik mellé odaírjam pl. az adott munkalap A1-es cellájának az értékét.
Ez így elég ködös, de magyarázom: a munkalapok a dolgozók nevei, rajtuk a jelenléti ívük. Szeretnék egy listát, amin rajta lenne a dolgozók neve (=a munkalap neve), mellette pedig a jelenléti ívén lévő óraszám szumma cellájának (pl. A1 cella) értéke.
Megoldható valahogy? Nem igazán tudom, merre induljak el, amikor nem csak egy konkrét munkalappal akarok dolgozni, hanem sorba kellene venni az összeset, aminek nem tudom a nevét...Minden segítséget köszönök!
miv -
m.zmrzlina
senior tag
-
csongi
veterán

sztanozs
-
sztanozs
veterán
Adj hozzá egy E oszlopot (E1):
=(C1>"")*4+(D1>"")*2
és rakd az alábbi sorrendbe
E - csökkenő számsorrend
C - A -> Z
D - A -> Z -
sztanozs
veterán
-
m.zmrzlina
senior tag
Az alábbi tartományt szeretném rendezni a következőképpen. Legfelülre azok a sorok melyeknél C és D oszlopban is van adat, alá ahol csak a C oszlopban van adat, legalulra ahol csak a D oszlopban van adat.
Hogy lehet ezt legegyszerűbben megoldani?

-
m.zmrzlina
senior tag
-
csongi
veterán
Sziasztok!
Az alábbit szeretném megoldani.B1 cellába számoltatni
Ha h22= 2.csoport akkor g18*f7, ha h22= 4.csoport akkor g18*f8, ha h22= 6.csoport akkor g18*f9Köszönöm!
-
Delila_1
veterán
Ha jól értem, az első lapra írod be az AC oszlopba a napi állásidőt az egyes gépekhez. Ezeket kell összesíteni a második lapon, ahol az A oszlop tartalmazza a gépek nevét, az első sor pedig a hét napját.
Fontos, hogy a 2 lapon megegyezzen a gépek neve, tehát ha az első lapon P1 a név, a másodikon is az legyen, nem 1.
Az első laphoz rendeltem egy eseményvezérelt makrót. Mikor beírod egy géphez az állásidőt, a második lapon a megfelelő géphez, és az aktuális naphoz beírja az értéket.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim WSO As Worksheet, sor, oszlop As Integer
Set WSO = Sheets("Összesítés")
If Target.Column = 29 And Target > "" Then
sor = Application.Match(Cells(Target.Row, 1), WSO.Columns(1), 0)
If VarType(sor) = vbError Then
sor = Application.Match(Cells(Target.Row - 1, 1), WSO.Columns(1), 0)
End If
oszlop = Application.Weekday(Date, 2) + 1
WSO.Cells(sor, oszlop) = WSO.Cells(sor, oszlop) + Target
End If
End SubA második lap J oszlopába betettem egy összesítést.
Nézd meg a csatolt füzetben a cellaformázást az első lap AC; valamint a második lap B:H és J oszlopában. -
Batistuta7
tag
Sziasztok
Kis segítséget szeretnék kérni.
Egy üzembe csináltam egy folyamatnaplót. Az utolsó oszlopban szeretném felvinni mindig az aktuális műszakban a gépek állásidejét. Olyan megoldásra gondoltam hogy ha az állásidő celléjára rákattintok és amit oda beírok az megjelenik ott plusz a kettes munkalapon megjelenik nap szerint egy másik táblázatban is, amiből rögtön egy diagramot is tudnék csinálni.Minden meg tudok csinálni , csak azt nem hogy hogy kell egy olyat cellát létrehoznom amibe ha beírok egy értéket akkor azt a másik munkalapra átírja a megfelelő nap megfelelő sorába.
linkelem a képeket ,úgy érthetőbb mit szeretnék.
előre is köszönöm a segítséget.
1
2 -
m.zmrzlina
senior tag
Szerintem a modulodnak amiben a kódod van az a neve, hogy "valasz". A kódban pedig van egy változó ugyanilyen néven.
Valamelyiket nevezd át!
Új hozzászólás Aktív témák
-
29800 - 29701
54978 - 54001 54000 - 52001 52000 - 50001 50000 - 48001 48000 - 46001 46000 - 44001 44000 - 42001 42000 - 40001 40000 - 38001 38000 - 36001 36000 - 34001 34000 - 32001 32000 - 31901 31900 - 31801 31800 - 31701 31700 - 31601 31600 - 31501 31500 - 31401 31400 - 31301 31300 - 31201 31200 - 31101 31100 - 31001 31000 - 30901 30900 - 30801 30800 - 30701 30700 - 30601 30600 - 30501 30500 - 30401 30400 - 30301 30300 - 30201 30200 - 30101 30100 - 30001 30000 - 29901 29900 - 29801 29800 - 29701 29700 - 29601 29600 - 29501 29500 - 29401 29400 - 29301 29300 - 29201 29200 - 29101 29100 - 29001 29000 - 28901 28900 - 28801 28800 - 28701 28700 - 28601 28600 - 28501 28500 - 28401 28400 - 28301 28300 - 28201 28200 - 28101 28100 - 28001 28000 - 26001 26000 - 24001 24000 - 22001 22000 - 20001 20000 - 18001 18000 - 16001 16000 - 14001 14000 - 12001 12000 - 10001 10000 - 8001 8000 - 6001 6000 - 4001 4000 - 2001 2000 - 1
-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Tabletek, E-bookok Nyomtatók, szkennerek PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
- Fórumok
- OS, alkalmazások
- Microsoft Excel topic
- (kiemelt téma)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Milyen házat vegyek?
- OLED TV topic
- Megújult mobilos felület, fórumos ráncfelvarrás a PROHARDVER! lapcsaládon
- Prohardver app (nem hivatalos)
- Medence topik
- OLED monitor topic
- Crimson Desert
- Házimozi belépő szinten
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- További aktív témák...
- Kaspersky, BitDefender, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! Automatikus 0-24
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- Eladó jogtiszta, Windows 11/10, Office 2019/2021/2024, Fizikai és Digitális licencek, Számlával.
- Windows 10/11 Home/Pro , Office 2024 kulcsok
- REFURBISHED és ÚJ - Lenovo ThinkPad Ultra Docking Station (40AJ)
- CoolerMaster MM710 53gr pehelykönnyű gamer egér eladó
- Kihagyhatatlan áron DELL XPS 13 9310 /i5-1135G7/8 GB Ram/512 GB SSD/FHD+ IPS
- Konzol felvásárlás!! Playstation 5, Playstation 5 Pro
- Dell Latitude 5290, 2 az 1 ben,12.5",FHD,i5-8350U,8GB DDR4,256GB SSD,WIN11
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest











. A 2. sor üres volt, nem csoda, hogy nem működött. Most már viszont jó
. Ahogy keresgéltem közben a megoldást, legalább annyi kiderült, hogy egy

