-
Fototrend
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
-
sztanozs
veterán
válasz pirit28 #15190 üzenetére
Használd az INDIRECT függvényt:
B1 mezőbe: ''[elérésiútvonal.xlsx]Sheet1'!A1
!két aposztrof van az elején!Majd, ahol be akarod hivatkozni, ott elég az
=INDIRECT($B$1)[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
Az első if után vagy elseif-nek kell követketten vagy le kellene zárni end if-fel.
Ja és forráskódként illeszd be létszi, hogy látszanak az anotációk is.Ha jól veszem ki az első If és a kijelölt ElseIf között rész mind az első If-hez tartozik.
Próbáld meg esetleg kirakni szubrutinba.[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
Hozzáadod plusz megjelenítő elemként a minimumot, az átlagot és a maximumot (plusz sorok vagy oszlopok kellenek hozzá a táblázatban) és hozzáadod vonal-elemként a diagramhoz (vegyes digramot választasz).
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
Erre való a Pivot tábla.
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
-
sztanozs
veterán
válasz Wasquez #15207 üzenetére
Úgy is megy, de Off 2010-ben (de talán már 2007-ben is) van erre feltételes formázás típus.
Amúgy feltételbe az kell, hogy <cellacím> = MAX(<régió>) - viszont ha több maximum elem is van, mind ki fogja színezni...
Ha kötelezően csak egy (az első) kell akkor lookup kell, az csak egy elemet talál meg, és kell keresni egy olyan mezőt, ami egyedi (vagy csinálni egy számláló mezőt az oszlopok !végére!):
<egyedimező-a-sorban> = vlookup(max(<régió>), <tábla-az-értékoszloptól>, <egyedi-mező-címe->,0)[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
Az aláhúzott résznél adod meg mennyinél kell nagyobb (vagy kisebb, vagy bármilyen) legyen.
Sub Macro1()
Sheet1.ChartObjects("Chart 1").Activate
Dim val()
val = ActiveChart.SeriesCollection(1).Values
Dim ix
For ix = 1 To ActiveChart.SeriesCollection(1).Points.Count
If val(ix) >= 60 Then
ActiveChart.SeriesCollection(1).Points(ix).Select
With Selection.Format.Fill
.Solid
.Visible = msoTrue
.ForeColor.RGB = RGB(255, 0, 0)
.Transparency = 0
End With
End If
Next
End SubJOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz MaciLaci68 #15217 üzenetére
Ezt használd:
FileFormat:= xlTextPrinter
Esetleg még ezt tedd hozzá (ha local codepage kell, ami a gépen van és nem US):
Local:= TrueJOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz pirit28 #15221 üzenetére
Szerintem a legegyszerűbben úgy tudnád megtrükközni, hogyha a napi fájl mindig ugyan azon a néven szerepelne, és az előző napi fájl pedig átneveznéd napi fájlnak:
2012 10. 09.
export aktualis.xls2012 10. 10.
move aktualis.xls backup_2012_10_09.xls
export aktualis.xls2012 10. 11.
move aktualis.xls backup_2012_10_10.xls
export aktualis.xlsígy minden nap csak az összegző fájlt kell frissítened mert a napi fájlnak mindig ugyan az a neve
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz MaciLaci68 #15223 üzenetére
Mentsd el txt kiterjesztéssel...
Amúgy nekem DOS Text-két mentve SaveAs-sal (menüből) is berakja macskakörömbe. Te pontosan milyen Text módba mented, ahol nem macskakörmöl?JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz MaciLaci68 #15227 üzenetére
Megpróbáltam most FileFormat:=xlText-tel és nekem nem macskakörmöli...
Pontosabban a te szövegedet kézzel és makróval is macskakörmöli.[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz sztanozs #15230 üzenetére
Nem tudtam a PRN-en kívül kézzel sem olyan módba menteni, hogy ne rakjon köré macskakörmöt...
De makróval mondjuk meg tudod csinálni, fájl manipulációs parancsokkal.
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
Persze - ha többre is kell, akkor végig kell járni az összes SeriesCollection-t is
Itt az egyes csak az első "oszlopot" jelöli:
ActiveChart.SeriesCollection(1).ValuesJOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
ThisWorkbook-ba:
Dim WithEvents CHT As ChartPrivate Sub Workbook_Open()
Set CHT = Sheets("Sheet1").ChartObjects(1)
End SubPrivate Sub CHT_Calculate()
'ide kell a makró
End SubJOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz MaciLaci68 #15235 üzenetére
Excel (VBA) - Open / Write / Close utasítások - de ahogy olvasom ez is felejtős - ez is helyettesít, meg macskakörmöl, ha valami nem tetszik neki a szövegben
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz ancarian #15239 üzenetére
Excel 2010-el marha egyszerű mind a kettő:
1) Filter -> keresőmezőbe beírod, amit tartalmaznia kell és leszűri azokra
2) Pivot tábla -> diagram (lehet, hogy pivot sem kell, csak nem értettem meg a kérdést)[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz medvezsolt #15242 üzenetére
=IF(<cella-x-el>="x",now(),"")
Ha az kellene, hogy azx- beíásakori dátum maradjon ott, azt makróval lehet megcsinálni... De mintha rémlene, hogy ezt már kérdezted (vagy valaki kérdezte) mostanában...JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz medvezsolt #15242 üzenetére
A sheet lapjára kell bemásolni:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
'A figyelt oszlop száma
checkedcolumn = 3
For areaindex = 1 To Target.Areas.Count
For columnindex = 1 To Target.Areas(areaindex).Columns.Count
If Target.Areas(areaindex).Columns(columnindex).Column = checkedcolumn Then
For Each cell In Target.Areas(areaindex).Cells
If cell.Value = "x" Then
If (Cells(cell.Row, cell.Column + 1).Value = "") Then Cells(cell.Row, cell.Column + 1).Value = Date
End If
Next
End If
Next
Next
Application.EnableEvents = True
End SubCsak az üres mezőket tölti fel dátummal, a már kitöltötteket nem frissíti le.
mod: most nézem, hogy van rendes Application property az események tiltására, lemódosítottam arra...[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz hotdogmen #15277 üzenetére
Két segédoszloppal biztosan meg lehet csinálni...
Legacy GET.CELL XLM4 makró 63-as funkcióját kell használni hozzá: [link]
Nem teljesen megbízható és nem tudom működik 2003 feletti verziókban (RGB-re szerintem nem működik, csak ColorIndex-et ad vissza).[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz sztanozs #15282 üzenetére
És kipróbáltam: 2010-ben is megy, de macro-enabled workbookba kell tenni és akkor már lehet, hogy saját makrót értelmesebb is írni.
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz lacid90 #15288 üzenetére
Beszúrsz a végére egy új oszlopot, ami tartalmazza a "tisztított" neveket és már működik is a pivot. Ugyanezt meg kell csinálnod (vagy inline lekódolnod), ha szumha, vagy egyéb más megoldást választasz.
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
Legyegyszerűbb csinálni egy olyan függvényt (Function), amibe beleteszed az egész függvényedet a munkalapon és az vizsgálja az eredményt:
Public Function Zero(eredmeny As Variant) As Variant
If IsError(eredmeny) Then
If (eredmeny = CVErr(xlErrDiv0)) Then
UserForm1.Show
End If
End If
Zero = eredmeny
End FunctionJOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz Mauzes #15292 üzenetére
Nem egy másik Office programba beágyozott excel objektumot akarsz beilleszeni?
pacman789: Szerintem nem értettem meg, mit szeretnél...
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
Nem, ez egyszerűen mindig elindítja a formot (függően attól hova teszed).
1) Az On Error csak a kódban lefutáskor bekövetkező hibákra reagál (ráadásul bármilyen hibára, nem csak a 0-val való osztásra).
2) Bár oda ugrasztanád hiba esetén a form.show-ra a kódot az on error-ral, de mivel előtte nincs elágazás/funkcióból kiugrás (vagy bármi más vezérlő szerkezet), így a kód garantáltan ráfut a form.show-ra, ha van hiba, ha nincs...JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
Mert deklarációs részbe (szubrutinon / függvényen kivülre) nem tehetsz értékadást. Tedd a Workbook_Open-be, ott jó helye lesz.
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
Nem - távolabbról nézve az egész makró - makró a modul teteje, makrók a rögzített és kézzel írt szubrutinok, és makrók az események során meghívott szubrutinok is.
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
Az az esemény (Workbook_Open) csak akkor fut le, amikor megnyitod a munkafüzetet:
- vagy kézzel lefuttatod tesztelésnél és akkor biztos azonnal inicializálva lesz
- vagy elmented, bezárod és újranyitod a doksit és akkor lefut az inicializációA 15303 nem jó, mert akkor a Workbook_Open scope-jában jön létre a WSH változó (tehát azon kívül nem látszik). Mindenféleképp a Modul-ban kell látrehozni, hogy mindenhonnan látszon - mert így globális és nem lokális változó lesz.
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
Látatlanban nem tudok erre mit mondani - valami nem jól vagy nem jó helyre írtál be - látni kellene az egészet hozzá...
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz zannor #15318 üzenetére
Több oszlopot használj az ellenőrzésekre, és beágyazott if-eket vagy or-okat. Ne haragudj, ha ezt most nem csinálom meg neked, igazi jó gyakorlófeladat. Sorvégeket a =right(hivatkozás, karakterszám) = "valami" formulával tudod leellenőrizni, pl:
= OR(lower(right(trim(A64), 2)) = "ev", lower(right(trim(A64), 4)) = "e.v.")[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
Miért van az, hogy ha az Excel mellett nyitva van valami más Office alkalmazás, akkor az Excel makróm belassul? Konkrétan egy ~80.000 soros táblát dolgoztam fel makróval úgy, hogy Range.Copy-val másolok néhány meztőt egyik sheetről egy másikra, és egy mezőt meg feldarabolok Split-tel. Ha fut az Outlook, akkor kb 10000 sor feldolgozása után 100 sor/perc sebességre lassus, ha pedig bezárom az Outlookot, akkor végigszalad az egészen 20-30 mp alatt...
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz Bobrooney #15628 üzenetére
ÁÁ dehogy - ha függvénmnyel szedem szét (vagy vlookup-ozok), akkor felmegy commited memory 200.000 MB környékére, de így lent marad ~30 MB-on, viszont így is folyamatosan tekeri a procit. Ami érdekes, hogy ha fut másik Office alkalmazás, akkor ugyan 100%-on pörög továbbra az Excel process, de úgy tűnik, mintha a CPU idő 1%-át kapná csak meg gyakorlatilag, a többi valami más folymatban várakozik.
Mintha a VBA hívásoknak lenne valami in-app szinkronizációja az Office Suite-on belül, és minden hívásnál megvárná, míg a többi Office alkalmazás visszaigazolja, hogy továbbmehet.JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
Miért kell Range(bevétel)? A bevétel-nek már magában is Range típusúnak kell legyen...
Hogy definiálod a bevétel változót?
Csináld inkább ezt:
Sheets("Alap").Range("G9").Copy
Dim bevétel as Range
Set bevétel = Sheets("Munka2").Range("E4")
bevétel.Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=FalseVagy még egyszerűbben:
Sheets("Alap").Range("G9").Copy
Sheets("Munka2").Range("E4").Select
Selection.PasteSpecial Paste:=xlPasteValuesAmúgy nem árt leellenőrizni, hogy mi az aktív workbook, ha nem az, amire számítasz (nincsenek ilyen Worksheet-ek rajta), azon is simán elhasal - vagy mást csinál, mint amit szeretnél...
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz poffsoft #15972 üzenetére
A set nélküli értékadás azért fut le (ha nincs egzaktul definiálva a változó), mert ha nem sikerül objektumként átadnia, akkor a hívás vissza tudja adni a range értékét is (mint a default Value property értéke - ami ráadásul nem a range címe, hanem a range első elemének a tartalma) és ezt egy későbbi Range hívásban (mint ahogy csináltad is) fel lehet használni. A probléma az , hogy nem biztos, hogy jó (sőt szinte biztos, hogy nem jól felhasználható) értéket ad vissza a Range a default property-n... Azt viszont nem tudja felhasználni a Range függvény, ami ezt a hibát adja vissza...
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz poffsoft #15976 üzenetére
Őőőő, de
Sőt nem is neked akartam válaszolni; vagyis pontosabban első olvasatra azt hittem kérdés, és csak később visszaolvasva jöttem rá, hogy magyarázatMondjuk azt sem értem, hogy hogy tudott az eredeti programja "egyszer működni, egyszer meg nem működni"...
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz lacid90 #15981 üzenetére
Vagy makróv al végigszámolod ciklusban, vagy pedig lehúzod a képletet (második sort) - valahogy így:
A | B | C
1 A1 | fn1(A1) | fn2(B1)
2 A1-C1 | fn1(A2) | fn2(B2)
3 ...[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz baderoli #16023 üzenetére
Nem egészen értem, milyen neveket kell beírni és milyen születési éveket kell írni?
Minden nap ugyanazokat a neveket (vagy ugyanabból a létező csoportból) kell felvinni, vagy minden nap új neveket viszel fel?JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
Naptár az szerintem nincs, legfeljebb naptár kontroll - amit kitehetsz formra, vagy a munkalapra VBA-val, szükség esetén.De találtam valamit neked (ez valami beépülő modul):
Displaying Calendar Automatically
By default Pop-up Excel Calendar displays an in-cell icon button when you click a date cell. You need to click the in-cell icon button to open the calendar on which you click to select the date value.The "Display calendar automatically" option on the Settings window saves one click by displaying the calendar automatically. If you check this option, the calendar is displayed automatically along with the in-cell icon button whenever you click a date cell.
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz DelArco #18018 üzenetére
Nem, de ha függvénnyel számolod ki az adott mezőben, akkor csak "köré" kell tenni:
=HA(eredetifv(...)="";A2;eredetifv(...))JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
Új hozzászólás Aktív témák
- Game Pass Ultimate előfizetések 1 - 25 hónapig azonnali kézbesítéssel a LEGOLCSÓBBAN!
- Microsoft licencek a KIVÉTELES ÁRAK - UTALÁSSAL IS AUTOMATIKUS KÉZBESÍTÉS - Windows és Office
- Windows 10/11 Home/Pro , Office OEM/Retail kulcsok
- Canva Pro előfizetés - 1 éves
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! LEGOLCSÓBB! Automatikus 0-24