-
GAMEPOD.hu
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
Topikgazda
válasz Sickboy25 #6859 üzenetére
Így nem lehet, de van más megoldás.
Vegyük, hogy a P3:V25 tartomány 5 százalékát akarod kiszámolni.
Beírod az eredeti számokat a tartományba.
Egy cellába (mindegy hova) beírsz 100-at, egy másikba 5-öt.
Másolod a 100-at (Ctrl+c), kijelölöd a tartományt, jobb klikk, Irányított beillesztés, Osztás.
Másolod a 5-öt, kijelölöd a tartományt, jobb klikk, Irányított beillesztés, Szorzás.[ Szerkesztve ]
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
félisten
válasz Sickboy25 #6859 üzenetére
Hali!
Makró-kód
Private Sub Worksheet_Change(ByVal Target As Range)
X = Range(Target.Address)
Y = 50
On Error Resume Next
If Not Intersect(Range("P3:V25"), Range(Target.Address)) Is Nothing Then
If X <> "" Then
Application.EnableEvents = False
Range(Target.Address) = Y / X * 100
Application.EnableEvents = True
End If
End If
On Error GoTo 0
End SubAmit állíthatsz, az az Y(állandó, én most 50-nek vettem) illetve az adattartomány(esetünkben P3:V25). Természetesen ebben a tartományban nem lehet a táblázat fejléce csak számadatok. Amennyiben pl betűt is tartalmaz a cella(mert véletlenül melléütsz), akkor nem történik semmi, bekerül amit beírtál, nyilván nem lehet vele számolni.
Fire.
UI: Ha azt akarod kiszámolni, hogy hány százaléka X-nek Y, akkor korábban rossz képletet adtál meg. Helyesen Y/X*100...
[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
félisten
válasz Sickboy25 #6874 üzenetére
Hali!
Tehát ha A1-be újra beírsz egy számot, akkor nem változik A13.
Próbáld meg kézzel frissíteni a lapot, F9 billentyű, ha így frissül az érték, akkor ellenőrizd, hogy az automatikus számítás be van-e kapcsolva.
Fire.
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
Delila_1
Topikgazda
válasz Sickboy25 #7850 üzenetére
1. Vegyük, hogy az A:C tartomány bizonyos sorait akarod színezni. Beírod az első színezendő sor számát pl. a H1-be, az utolsót az I1-be. Kijelölöd az A:C tarományt. Formátum -> Feltételes formázás. A képlet: =ÉS(SOR()>=$H$1;SOR()<=$I$1). Megadod a kedvenc formátumodat.
2. A lapvédelem előtt jelöld ki azokat az oszlopokat, amiket majd engedsz módosítani. Cellaformázás, Védelem fül, vedd ki a pipát a Zárolt elől.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
félisten
válasz Sickboy25 #7853 üzenetére
Hali!
Akkor mákom volt, mert a fenti makró épp ezt teszi.
A Set MyRange = Range("A1:A10") sorban beállítod, hogy hol vannak az adataid és meddig tartanak, az Nth = 5 változót meg annyira állítod, amennyire szükséged van (most az 5 legnagyobb értéket szinezi ki, pontosabban, ha van több egyforma érték is a legnagyobbak közt, akkor azt is) pl:
1
7->színezve
3->színezve
4->színezve
5->színezve
6->színezve
7->színezveA makró függőleges elhelyezkedésű (egy oszlopban vannak az adatok) adatokhoz készült!
Fire.
[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
félisten
válasz Sickboy25 #7855 üzenetére
Hali!
Ráállsz/kiválasztod azt a munkalapot, amelyiken az adatok vannak, nyomsz egy ALT + F11-et, bal oldalt fel lesz sorolva a munkalapok neve és épp azon fog állni, amelyik munkalapot kiválasztottad korábban, azon duplakatt, a megjelenő ablakba meg a teljes makrót bemásolod és futtatod. (A VBA editor menüsorán van egy zöld play gombra emlékeztető ikonocska, azzal futtatod)
Innentől, ha módosítasz valamit az adatok közt, akkor automatikusan lefut. A kódot úgy írtam meg, hogy csak akkor dolgozik, ha az adatok oszlopában módosítasz, ha máshol akkor nem, feleslegesen ne fusson le.
Fire.
[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
félisten
válasz Sickboy25 #7857 üzenetére
Hali!
Küld...
Mielőtt elküldöd, 2 kérdés
1. Módosítottál legalább egy adaton?
2. Ha hosszú a tábla, akkor lehet, hogy nem látszik az 5 legnagyobb, végignézted?Fire.
[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
félisten
válasz Sickboy25 #7859 üzenetére
Hali!
Egy kis 2003 és 2007 közti különbség, ezért szoktam (már nem 1x) mondani, hogy célszerű lenne leírni a tisztelt kérdezőknek, hogy mégis milyen verziójú (és némely esetben, milyen nyelvű) Excelt használ... Na de sebaj, van más gond is...
Na ezért meg célszerű képet is bedobni, mert akkor láttuk volna, hogy cellaegyesítést használsz az adataidnál...Módosítani kell a makrót ez miatt...
Fire.
[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
félisten
válasz Sickboy25 #7861 üzenetére
Hali!
Akkor ami fontos ilyen esetben: Ha cellaegyesítést használsz, akkor az adatsorod utolsó sora, mindig az, mint amikor nincs cellaegyesítés.
Te a kódban R2 : R222 tartományt adtál meg(mert az Excel ilyenkor ezt jelzi ki, ha ráállsz az utolsó egyesített cellára), de ez nem igaz, mert az utolsó cella az a 225-ös...(Be is írtam a makróba) Remélem így érthető...Épp ezért nem kellett a makrón módosítani(legalábbis ebből a szempontból), ha erre odafigyelsz, akkor kifogástalanul működik.Private Sub Worksheet_Change(ByVal Target As Range)
Dim MyFxs As WorksheetFunction
Set MyFxs = Application.WorksheetFunction
Dim MyRange As Range
Set MyRange = Range("R2:R225")
Dim Nth As Integer
Nth = 3
If Not Intersect(MyRange, Range(Target.Address)) Is Nothing Then
Application.ScreenUpdating = False
MyRange.Select
MyRange.Interior.ColorIndex = 0
For i = 1 To Nth
What = MyFxs.Large(MyRange, i)
For j = MyRange.Row To MyRange.Cells.Count
If Cells(j, MyRange.Column) = What Then
Cells(j, MyRange.Column).Select
Selection.Interior.ColorIndex = 37
End If
Next j
Next i
Range(Target.Address).Select
Application.ScreenUpdating = True
End If
End SubFire.
[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
Delila_1
Topikgazda
válasz Sickboy25 #7864 üzenetére
Valóban félreértettem az eredeti kérdést.
Minden feladatot több módon lehet megoldani. Továbbra is más megoldást javaslok, nem a Fire által megadott makróst, ami akkor működik, mikor az R oszlopba beírsz egy adatot.
Az elképzelésem szerint ki kell jelöldöd az R2:R500 tartományt. Ha több adatra számítasz, a tartomány is legyen nagyobb, és a képleteket ennek megfelelően módosítsd. A tartomány első tagját azért a 2. sortól adtam meg, mert feltételezésem szerint van címsorod. A feltételes formázás első képlete:
=ÉS(DARAB2(R$2:R$500)<=81;R2>NAGY(R$2:R$500;4)), és itt megadod a formátumot,
a másodiké: =ÉS(DARAB2(R$2:R$500)>81;R2>NAGY(R$2:R$500;6)). Itt ugyanazt a formátumot add meg.
A 80, vagy annál kevesebb csapat indulása esetén a 3 legnagyobb fogást színezi ki, több indulónál az 5 topot.
A két képletben a <=81, ill. a >81 szintén a címsor miatt nem 80.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
félisten
válasz Sickboy25 #7878 üzenetére
Hali!
Van amikor én nézek be valamit, akkor Delila_1 kijavít, ha Ő néz el valamit, akkor Én javítom ki Őt. Ha Ő azt állítja, hogy nála megy, nálam meg nem, akkor én kutakodok a megoldás után, ha meg én állítom, hogy valami megy és nála nem, akkor meg Ő kutakodik a megoldás után...
Szóval "nálunk" ez teljesen természetes, megszokott jelenség, de semmi estre sem konfliktus.
Fire.
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
Delila_1
Topikgazda
-
félisten
válasz Sickboy25 #7957 üzenetére
Hali!
A neked megfelelő cellába írd be ezt:
=SZÖVEG(MOST();"hhhh ")&NAP(10)Mivel alapban automatikus számolásra van állítva az Excel, ezért amikor megnyitod a munkafüzetet, automatikusan változik a cella értéke is
Fire.
UI: Nekem is kissé zavaros volt a kérdés, de talán megfelel a megoldás...
[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
Delila_1
Topikgazda
válasz Sickboy25 #7957 üzenetére
Másképp gondolom, mint Fire.
Szerintem a "figyelmeztető" cellába ez kell:=DÁTUM(ÉV(MA());HÓNAP(MA());10)-MA() & " nap múlva kell leadni a jelentést."
Azt, hogy mikor küldted az előzőt, írd be egy cellába, és akkor mindig tudod majd.
[ Szerkesztve ]
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
-
Delila_1
Topikgazda
válasz Sickboy25 #7963 üzenetére
Na még egy, hogy biztos legyen a figyelmeztetés.
Az A1 cellát formázd félkövérre, és piros betűszínre. A laphoz rendeld a nyúlfarknyi makrót (lapfülön jobb klikk, Kód megjelenítése, a VB szerkesztőben a jobb oldalon kapott üres felületre kell bemásolni).
Private Sub Worksheet_Activate()
If Day(Date) < 11 Then
Cells(1) = 10 - Day(Date) & " nap múlva add le a jelentést"
Else
Cells(1) = ""
End If
End SubMikor a lapra lépsz, beírja, vagy 10-e után törli a hátralévő napokat.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Sickboy25
addikt
válasz Sickboy25 #8607 üzenetére
Vagyis egy apró hibája azért van... Mégpedig, ha 100% felett jönne ki az érték, akkor nem 110% -ot jelenít meg hanem 90%-ot... Ez mitől lehet?
"Az élet olyan, mint az ásás. Néha hátráltat egy- két gyökér, de annak jól odab*szol ásóval, azt’ haladsz tovább!"X360 gamertag: sickboyhun
-
Sickboy25
addikt
válasz Sickboy25 #8607 üzenetére
Közben teszteltem és nem jó a képlet... Nem számol helyesen.
Közeben rájöttem és köszi a segítséget: =H5/(D5*G5)/24 így számol helyesen...
[ Szerkesztve ]
"Az élet olyan, mint az ásás. Néha hátráltat egy- két gyökér, de annak jól odab*szol ásóval, azt’ haladsz tovább!"X360 gamertag: sickboyhun
-
félisten
válasz Sickboy25 #8711 üzenetére
Használd a vágólap megjelenítést és akkor korlátlan számban beillesztheted egy klikkel a szimbólumot.
(Mellesleg az "átmérő" szimbólum az unicode karakter, ezért nem fogod tudni ALT+NUMPAd segítségével megadni)Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
félisten
válasz Sickboy25 #8797 üzenetére
Nem biztos, hogy jól értem, de talán erre gondolsz
=HA(D42>16;D44;HA(ÉS(D42<=16;D42>=12);E44;F44))
Magyarul:
Ha D42 nagyobb 16-nál, akkor D44
Ha D42 12 vagy nagyobb, de 16 vagy annál kisebb, akkor E44
Ha D42 12-nél kisebb, akkor meg F44[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
Sickboy25
addikt
válasz Sickboy25 #11739 üzenetére
addig eljutottam, hogy az 57 % a grafikonom! Viszont ebbe a grafikonba, hogy tudom beleszúrni a különböző értékeket?
2007-es excel-ről beszélekKöszönöm a segítséget...
"Az élet olyan, mint az ásás. Néha hátráltat egy- két gyökér, de annak jól odab*szol ásóval, azt’ haladsz tovább!"X360 gamertag: sickboyhun
-
Delila_1
Topikgazda
-
Delila_1
Topikgazda
válasz Sickboy25 #12089 üzenetére
2003-as verzióban át lehet állítani a színeket füzetenként az Eszközök | Beállítások menüben, a Szín fülön. Valószínűleg más árnyalatok vannak rendelve a különböző füzetekhez.
Magasabb verziókban nem találtam erre módot.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
félisten
válasz Sickboy25 #12103 üzenetére
Hát így konkrétan nem tudom, hogy mit csesztél el, ha egyáltalán elcsesztél, mert közel sem biztos. A hivatkozásokat lehet kezelni, konfigolni, ehhez a Adat fül/Kapcsolatok csoport/Hivatkozások-ra kell kattintani. (Ez csak akkor aktív, ha a munkafüzetben valóban vannak hivatkozások (külső/belső))
Ott be lehet állítani, hogy honnan és mit frissítsen az adott munkafüzet és azt is, hogy azt automatikusan tegye-e.
Először nézd meg ezt, hátha ez megoldja a problémát.
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
Delila_1
Topikgazda
válasz Sickboy25 #12131 üzenetére
Irányított (speciális) szűrőt alkalmazz.
Vegyük, hogy az adataid az A:E tartományban vannak. Az A oszlop tartalmazza a dátumot, az oszlop címe Kelt.
A G1 cella legyen Kelt, G2-be írd a keresendő dátumot, a példa szerinti 2011.09.11-et.
A szűrés párbeszéd doboza ilyen legyen:Más helyre másolja
Listatartomány: $A:$E
Szűrőtartomány: $G1:$G2
Hova másolja: $I$1:$M>1
Csak az egyedi rekordok megjelenítéseKépet akartam beszúrni, de a 15 KB-os, jpg kiterjesztésű képet nem megfelelőnek minősíti a fórummotor. Kiírja, hogy max 1920×1200 px, 1Mb, GIF/JPG/PNG képet tud csak fogadni.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
-
Delila_1
Topikgazda
válasz Sickboy25 #12139 üzenetére
Lehet, hogy itt-ott nem dátum formátumú az adatod.
Állítsd a teljes oszlopot dátum formátumra, és egyenként enterezd le, de úgy, hogy F2-t nyomsz a cellán, majd Enter. A teljes oszlopon F2-Enter, F2-Enter.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz Sickboy25 #12139 üzenetére
Lehet, hogy itt-ott nem dátum formátumú az adatod.
Állítsd a teljes oszlopot dátum formátumra, és egyenként enterezd le, de úgy, hogy F2-t nyomsz a cellán, majd Enter. A teljes oszlopon F2-Enter, F2-Enter.Az a cella (G2) is dátum formátumú legyen, ahova a kiválasztott dátumot írod.
[ Szerkesztve ]
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
félisten
válasz Sickboy25 #15062 üzenetére
Pontosabban/egyértelműbben fogalmazz, mert egyik kérdés üti a másikat...
Az első kérdésedben még valami össz darabszámról kérdezel, majd a következő kérdésedben meg már tényként írod, hogy beírod a darabszámot és egy összeget kellene meghatározni.
Szóval akkor hogy is van ez? (szívesen segítek, de tényleg nem értem)[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
félisten
válasz Sickboy25 #15064 üzenetére
Az jó, ha már Te sem érted.
Lehet, hogy csak ennyiről lenne szó? [link]
(A oszlopban a darabszámok, B oszlopban a monogramok, C1-be meg amilyen monogramot írsz, annak megfelelően összeadja A oszlop azon celláit, amihez B oszlopban a C1-be írt monogram található.)[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
-
lappy
őstag
válasz Sickboy25 #17130 üzenetére
Szia!
talán ez segít[ Szerkesztve ]
Bámulatos hol tart már a tudomány!
Új hozzászólás Aktív témák
- Autós topik
- (nem csak) AMD FX / Ryzen tulajok OFF topikja
- Samsung Galaxy Watch4 és Watch4 Classic - próbawearzió
- sziku69: Fűzzük össze a szavakat :)
- DIGI internet
- BestBuy topik
- Itt az első kép a 2024-es Nokia 3210-ről
- PlayStation rajongói nyereményjáték
- Politika
- Gray Zone Warfare
- További aktív témák...
- Bontatlan - BATTLEFIELD 1 Collectors Edition - Játékszoftver nélkül
- Steames kulcsok jó áron eladóak!
- AKCIÓ! - STEAM kulcsok /Anuchard, Aragami, Children of Morta, stb. - 2024.04.17.
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! LEGOLCSÓBB! Automatikus 0-24
- Windows, Office licencek a legolcsóbban, egyenesen a Microsoft-tól - 2990 Ft-tól!