- Android szakmai topik
- Poco X6 Pro - ötös alá
- iPhone topik
- Samsung Galaxy A54 - türelemjáték
- A sógorokhoz érkezik a kompakt Vivo X200 FE
- Samsung Galaxy S24 FE - később
- Bemutatkozott a Poco X7 és X7 Pro
- Itthon is kapható lesz a kerámia Xiaomi Band 10
- Csak semmi szimmetria: flegma dizájnnal készül a Nothing Phone (3)
- Fotók, videók mobillal
-
Mobilarena
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
Az a baj, hogy a tortadiagram csak 1 oszlop adatait tudja ábrázolni, ezért itt nem célszerű ez a forma.
Próbáld ki úgy, hogy kijelölöd mindkét oszlopot, beszúrod a tortát. Az adatokat módosítod az első oszlopban – ennek megfelelően változik a diagram. Módosítod a 2. oszlopot – a diagram marad az előző formában.
Ha mégis ragaszkodsz a tortához, 2 külön diagramot tegyél egymás fölé. A felsőnél a diagram terület legyen átlátszó, az egyes adatpontok pedig áttetszőek. Nem lesz jól követhető.
Szerintem jobb, ha az egyik oszlop adatait oszlopra-, a másikat vonalra formázod. -
Delila_1
veterán
válasz
m.zmrzlina #17681 üzenetére
Ez is egy módszer.
-
Delila_1
veterán
válasz
m.zmrzlina #17678 üzenetére
Makróban
dim utvonal$
utvonal$=range("A1"), ahol az A1 -> C:\almappa\al_almappa\ -
Delila_1
veterán
válasz
kekkec #17665 üzenetére
Ha rögtön a mostani képet adod meg, nem kellett volna duplán dolgozni. Igaz, az elmélet kitalálása volt a nehezebb dolog.
A színkódokat ismét a 2. lapra kell tenni, mint előzőleg, az A1:C10 tartományba. Ezeket az értékeket kedved, és ízlésed szerint módosíthatod.
Az új, laphoz rendelt makró:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row < 28 And Target.Row > 2 And Target.Row Mod 2 = 1 Then
maxx = Application.WorksheetFunction.Max(Range("B" & Target.Row & ":N" & Target.Row))
R = Application.Transpose(Sheets(2).Range("A1:A10"))
G = Application.Transpose(Sheets(2).Range("B1:B10"))
B = Application.Transpose(Sheets(2).Range("C1:C10"))
hatar1 = maxx * 0.1
hatar2 = maxx * 0.2
hatar3 = maxx * 0.3
hatar4 = maxx * 0.4
hatar5 = maxx * 0.5
hatar6 = maxx * 0.6
hatar7 = maxx * 0.7
hatar8 = maxx * 0.8
hatar9 = maxx * 0.9
For oszlop = 2 To 14
On Error Resume Next
szam% = Cells(Target.Row, oszlop)
Set ter = Range(Cells(Target.Row - 1, oszlop), Cells(Target.Row, oszlop))
Select Case szam%
Case Is <= hatar1
ter.Interior.Color = RGB(R(1), G(1), B(1))
Case hatar1 To hatar2
ter.Interior.Color = RGB(R(2), G(2), B(2))
Case hatar2 To hatar3
ter.Interior.Color = RGB(R(3), G(3), B(3))
Case hatar3 To hatar4
ter.Interior.Color = RGB(R(4), G(4), B(4))
Case hatar4 To hatar5
ter.Interior.Color = RGB(R(5), G(5), B(5))
Case hatar5 To hatar6
ter.Interior.Color = RGB(R(6), G(6), B(6))
Case hatar6 To hatar7
ter.Interior.Color = RGB(R(7), G(7), B(7))
Case hatar7 To hatar8
ter.Interior.Color = RGB(R(8), G(8), B(8))
Case hatar8 To hatar9
ter.Interior.Color = RGB(R(9), G(9), B(9))
Case Is > hatar9
ter.Interior.Color = RGB(R(10), G(10), B(10))
End Select
Next
End If
End Sub -
-
Delila_1
veterán
válasz
Delila_1 #17635 üzenetére
Reggel rohantam, most egy kicsit módosítottam a makrón. A színek kikavarásához normális értékeket kell írni, hogy jól mutassanak.
Sub mnmn()
usor% = Range("A1").End(xlDown).Row
maxx = Application.WorksheetFunction.Max(Range("A1:A" & usor%))
hatar1 = maxx * 0.2
hatar2 = maxx * 0.4
hatar3 = maxx * 0.6
hatar4 = maxx * 0.8
For sor% = 1 To usor%
szam = Cells(sor%, 1)
If szam < hatar1 Then Range("A" & sor% & ":J" & sor%).Interior.Color = RGB(0, 0, 255)
If szam >= hatar1 And szam < hatar2 Then Range("A" & sor% & ":J" & sor%).Interior.Color = RGB(120, 50, 100)
If szam >= hatar2 And szam < hatar3 Then Range("A" & sor% & ":J" & sor%).Interior.Color = RGB(80, 20, 180)
If szam >= hatar3 And szam < hatar4 Then Range("A" & sor% & ":J" & sor%).Interior.Color = RGB(120, 200, 150)
If szam >= hatar4 Then Range("A" & sor% & ":J" & sor%).Interior.Color = RGB(255, 0, 0)
Next
End Sub -
Delila_1
veterán
válasz
kekkec #17631 üzenetére
Mit szólsz ehhez? Csak összedobtam, rendes értékeket kell kitalálni a határoknak, és az RGB elemeinek.
A lap Change eseményéhez kötheted.Sub mnmn()
usor% = Range("A1").End(xlDown).Row
atlag = Application.WorksheetFunction.Average(Range("A1:A" & usor%))
hatar1 = atlag * (1 + 0.1)
hatar2 = atlag * (1 + 0.3)
hatar3 = atlag * (1 - 0.5)
hatar4 = atlag * (1 - 0.7)
hatar5 = atlag * (1 - 0.8)
For sor% = 1 To usor%
Select Case Cells(sor%, 1)
Case Is < hatar5
Range(Cells(sor%, 1), Cells(sor%, 10)).Interior.Color = RGB(0, 0, 250)
Case hatar5 To hatar4
Range(Cells(sor%, 1), Cells(sor%, 10)).Interior.Color = RGB(255, 0, 0)
Case hatar4 To hatar3
Range(Cells(sor%, 1), Cells(sor%, 10)).Interior.Color = RGB(120, 120, 0)
Case hatar3 To hatar2
Range(Cells(sor%, 1), Cells(sor%, 10)).Interior.Color = RGB(100, 200, 80)
Case hatar2 To hatar1
Range(Cells(sor%, 1), Cells(sor%, 10)).Interior.Color = RGB(200, 120, 60)
End Select
Next
End Sub -
Delila_1
veterán
válasz
kekkec #17631 üzenetére
Az a baj, hogy a feltételesen formázott cella színeinek a lekérdezése nem a látható szín kódját adja, hanem a formázás előttit.
Ha pl. a tartomány háttere eredetileg piros, hiába lesz a feltételes formázással halványsárga, lekérdezéskor 3-as colorindexet, vagy RGB 255-öt kapsz.
-
Delila_1
veterán
válasz
dellfanboy #17621 üzenetére
Szivi.
-
Delila_1
veterán
válasz
alfa20 #17611 üzenetére
2. kérdés
Sub Keplet()
Dim usor%
usor% = Range("F2").End(xlDown).Row
Range("G2:G" & usor%).FormulaR1C1 = "=RC[1]/RC[-1]"
Range("G:G").Select: Selection.Copy
Selection.PasteSpecial Paste:=xlValues
Range("H2:H" & usor%).FormulaR1C1 = "=RC[-2]*RC[-1]"
'********************************************
Range("H:H").Select: Selection.Copy
Selection.PasteSpecial Paste:=xlValues
'********************************************
Application.CutCopyMode = False
End SubA csillagos sorok közötti rész nem kell, ha a H oszlop képleteit nem kell felülírni az értékeivel.
-
Delila_1
veterán
válasz
dellfanboy #17610 üzenetére
A függvényben idézőjelek között adtad meg a számításokat, ezért szövegként kezeli.
Változtass az általam küldött minta B1:B4 tartomány értékein, és meglátod, változik az eredmény is.
A B3 (fix kezelés) értékét is osztom a hónapok számával. -
Delila_1
veterán
válasz
Salex1 #17606 üzenetére
cells(1,3).copy
range("A5").select
selection.pastespecial paste:=xlvalueEz a 3 sor a C3 cella értékét illeszti be az A5 cellába.
A selection.pastespecial paste:=xlpasteformats a formátumot másolja,
a selection.pastespecial paste:=xlformulas pedig a képletet.cells(1,3).copy cells(5,1) mindent másol.
Szerk.: elkéstem.
-
Delila_1
veterán
válasz
dellfanboy #17605 üzenetére
A státuszsorban látszik a B6 cella képlete.
-
Delila_1
veterán
-
Delila_1
veterán
-
Delila_1
veterán
válasz
m.zmrzlina #17595 üzenetére
Nem biztos, de valószínűleg így kell megadnod a területet:
Range(Selection) -
Delila_1
veterán
válasz
Melorin #17583 üzenetére
A napok formázásában a B oszlophoz adnék egy új feltételt az ünnepnapokra.
A füzetben valahol felsorolnám az évben előforduló ünnepek dátumait, és Ünnepek névvel látnám el a tartományt.
A feltétel képlete =HOL.VAN(B1;Ünnepek;0)
Ez lesz a 3. feltétel.A hét.napja oszlopra sincs szükség.
a felt. formázás képletei
1. =HÉT.NAPJA(B1;2)=6
2. =HÉT.NAPJA(B1;2)=7 -
Delila_1
veterán
válasz
Melorin #17583 üzenetére
A helyedben az A oszlopra adnék egy feltételes formázást.
=HÓNAP(A2)=HÓNAP(A1)
a karakter színe legyen azonos a háttér színével.Még jobb, ha eleve azonos a karakter színe a háttérével, a képlet pedig
=hónap(a2)>hónap(a1)
Itt látható színt adsz a karakternek, és egy felső szegélyt a cellának. -
Delila_1
veterán
válasz
Melorin #17572 üzenetére
F1 szövege "Kezdő dátum", F2-é "Utolsó dátum"
A két dátumot a G1-be és G2-be írd be.B2 -> =$G$1
B3 -> =B2+1 ezt lemásolod, ameddig kell. A B oszlop formátuma nnnn
C2 -> =HÉT.NAPJA(B2;2) másold
D2 -> =HA(B2=$G$1;$F$1;HA(B2=$G$2;$F$2;""))Úgy látom, a B oszlop feltételes formátumát tudod, a D-é =VAGY(D2=$F$1;D2=$F$2)
-
Delila_1
veterán
2 napja nem kapok értesítést az új hozzászólásokról.
Ti sem, vagy az én készülékemben van a hiba?
-
Delila_1
veterán
válasz
atillaahun #17532 üzenetére
Az első kérdésre:
Az A oszlopban vannak a nevek.
B1 ->
=HA(BAL(A1;2)="dr";JOBB(A1;HOSSZ(A1)-4);HA(BAL(A1;4)="prof";JOBB(A1;HOSSZ(A1)-6);A1))C1 ->
=HA(BAL(A1;2)="dr";B1&" dr.";HA(BAL(A1;4)="prof";B1&" prof.";B1))A másodikat próbáld meg a Szövegből oszlopok funkcióval megoldani, ahol határolójelnek a szóközt adod meg. Nem lesz tökéletes, mert pl. az utca neve több szóból is állhat.
-
-
Delila_1
veterán
Létezik, de ezt elegánsabbnak gondoltam.
Töröld a figyelmeztetést tartalmazó címkét. A Gomb2-höz tartozó makró így módosul:Private Sub Gomb2_Click()
If Igeny1 = "Nem kérem" Then
MsgBox "Figyelmeztető szöveg", , "Box címe"
Igeny2.Visible = True
IgenyL.Visible = True
Else
Igeny2.Visible = False
IgenyL.Visible = False
End If
End SubAhhoz, hogy a lapok közötti váltásnál csak akkor jelenjen meg a B lap IgenyL címkéje, és az Igeny2 ComboBox, mikor az A lapon a "Nem kérem" szöveg van érvényben, írd be ezt a rövid makrót a többi közé:
Private Sub MultiPage1_Change()
Igeny2.Visible = False
IgenyL.Visible = False
End Sub -
Delila_1
veterán
Könnyebb elkészíteni, mint leírni a munka menetét.
Az előzőnél nem írtam be a figyelmeztető szöveget.
A ComboBox-ok listáját a RowSource tulajdonságnál adtam meg. -
Delila_1
veterán
válasz
m.zmrzlina #17513 üzenetére
Nem hekk, hukk!
-
Delila_1
veterán
válasz
m.zmrzlina #17511 üzenetére
Második kör, felhasználva a makródat.
Sub szamol()
Set ter = Application.InputBox("Jelöld ki a terület:", "Terület bekérése", Type:=8)
For i = 1 To 30
For Each cella In ter
If cella.Value = i Then
mennyi = mennyi + 1
End If
Next
Cells(1, 22) = "Szám": Cells(1, 23) = "Darabszám"
Cells(i + 1, 22) = i
Cells(i + 1, 23) = mennyi
mennyi = 0
Next
End Sub -
Delila_1
veterán
válasz
motinka #17503 üzenetére
Szívesen.
Írd meg az ötletet Microsoftéknak!
Egyébként van egy NAGY függvény, ami hasonló eredményt ad, nézd meg.Ahhoz egy kicsit variálni kell, mert előfordulhat, hogy több név is szerepel pl. 3-szor. Vegyük, hogy a DARABTELI függvény az F oszlopban van. A G oszlopba teszel egy ilyen képletet: =F2+SOR()*0,00001.
Ez az F2 cella feltételezett 3-as értékéből 3,00002-t képez, az F3 cella 3-asa 3,00003 lesz.
A NAGY függvény a G oszlopra hivatkozzon. A SOR() szorzója nagyon kicsi szám legyen, akkora, hogy az egész részt ne növelje a sokadik sorban sem. Mikor ez megvan, az INDEX és HOL.VAN függvény segítségével a megtalált helyezések mellé írathatod a neveket. -
Delila_1
veterán
válasz
motinka #17501 üzenetére
A neveket tartalmazó oszlopról készíts egy irányított (speciális) szűrést, ami csak az egyedi rekordokat tartalmazza. A mellette lévő oszlopba a DARABTELI függvénnyel kiíratod, hogy az egyes nevek hányszor szerepelnek az eredeti oszlopban, majd ezt a két oszlopot rendezed a második szerint, csökkenő sorrendbe.
-
Delila_1
veterán
válasz
m.zmrzlina #17495 üzenetére
-
Delila_1
veterán
válasz
m.zmrzlina #17491 üzenetére
Lapnévből dátum a cellákba:
Sub mm()
Dim lap As Integer
For lap = 2 To 3
Sheets(1).Cells(lap, 1) = CDate(Sheets(lap).Name)
Next
End Sub -
Delila_1
veterán
válasz
m.zmrzlina #17491 üzenetére
Nem tudod felcserélni a sorrendet? Először a cellákba viszed be a dátumokat, utána alkotsz belőlük lapneveket, majd sorba rakod a lapokat. Ezután jöhet az ellenőrzés.
-
Delila_1
veterán
-
Delila_1
veterán
válasz
m.zmrzlina #17488 üzenetére
Mert ebben feltételeztem, hogy nem alakítod át a dátumokat szöveggé. Írtam is, hogy nincs szükség a konvertálásra.
-
Delila_1
veterán
válasz
Barcley #17486 üzenetére
Ha nem lett volna az egyszerűbb megoldás, akkor is elég lenne 1 cella változását figyelni. Bármelyik cellát módosítod a sok összetevő közül, az A1 értéke változik.
Pl. A1=(B1*C20)+m2*(h6-g7)Itt elég a B1, C20, M2, H6 és G7 közül bármelyik címet beírni a target.address-be. A következő sor feltételében az A1 cella értékét vizsgálod.
-
Delila_1
veterán
válasz
m.zmrzlina #17484 üzenetére
Ehhez nem kell a dátumokat átalakítani.
Sub Van_e()
Dim oszlop%
For oszlop% = 6 To 10
If Cells(1, oszlop) <> Cells(oszlop + 1) - 1 Then _
MsgBox "Hiányzik a(z) " & Cells(1, oszlop) + 1 & " dátum."
Next
End Sub -
Delila_1
veterán
válasz
m.zmrzlina #17482 üzenetére
Az F oszlopba íratod a dátumnak látszó értéket. A G oszlopba importálással kerülnek a dátum az értékek?
Ezek 1 nappal nagyobbak, mint az azonos sorban lévő F-ek? A G oszlopban szövegesek az értékek? -
Delila_1
veterán
válasz
m.zmrzlina #17480 üzenetére
És az összejött?
-
Delila_1
veterán
válasz
m.zmrzlina #17477 üzenetére
Gyorsabb vagy, és még egyszerűbb is, amit írtál!
-
Delila_1
veterán
-
Delila_1
veterán
válasz
m.zmrzlina #17474 üzenetére
Range("B1") = Format(Range("A1"), "yyyy.hh.dd.")
A B1 cellába írja az A1 értékét a megadott formában.
-
Delila_1
veterán
válasz
csferke #17467 üzenetére
Többen panaszkodtak, hogy nem tudják megjeleníteni a naptár vezérlőt. Most egy olyan, makrót tartalmazó füzetet linkelek, ahol erre nincs is szükség. 2003-as verzió, ami működik a magasabb verziójú Excelekben is.
A makró a D oszlop bármelyik cellájára kattintva megjeleníti a formot a naptárral, a nap kiválasztása után beírja az értéket az aktuális cellába, majd a fókusz a következő cellára ugrik.
Ha csakis a D6-ra történő lépéskor akarod a formot megjeleníteni, akkor a Naptár laphoz rendelt makróban az
If Target.Column = 4 Then Naptar.Show
sort írd át a következőre:
If Target.Addres = "$D$4" Then Naptar.Show -
Delila_1
veterán
válasz
BuktaSzaki #17448 üzenetére
A DARABTELI függvénnyel minden cellád mellé beíratod, hány van belőle az oszlopban.
Ha az A1 cellától vannak az adataid lefelé, a B1 képlete =DARABTELI(A:A;A1). Ezt lemásolod az A oszlop mellé végig.
Rendezed az A:B oszlopot a B szerint, és ahol a B oszlopban 1-nél nagyobb szám van, törlöd a sort. -
Delila_1
veterán
-
-
Delila_1
veterán
Az Excel beállításainál, Népszerű elemek, Alapvető beállítások, Színsémánál választhatsz 3 szín közül, de mindegyiknél úgy állították be, hogy alig látszik a kijelölés.
Állíthatsz Windows-ban az asztalon jobb klikkre megjelenő tulajdonságoknál. XP-nél a Megjelenés fül, Speciális menüpontban kiválasztod az Elem legördülőben az Ablak-ot, ott állíthatsz be saját színt a majdnem fehér helyett.
-
Delila_1
veterán
Köszönöm! Ennek megfelelően módosítva a makró
Private Sub Worksheet_Change(ByVal Target As Range)
Dim ShapeDel As Integer
Dim wPath As String
If Target.Address = "$A$1" Then
ShapeDel = ActiveSheet.Shapes.Count
Do
If Shapes(ShapeDel).Type <> 8 Then Shapes(ShapeDel).Delete
ShapeDel = ShapeDel - 1
Loop While ShapeDel > 0
Range("B5").Select
Select Case Range("A1").Value
Case "pic1"
wPath = ThisWorkbook.Path & "\pic1.jpg"
ActiveSheet.Pictures.Insert (wPath)
Case "pic2"
wPath = ThisWorkbook.Path & "\pic2.jpg"
ActiveSheet.Pictures.Insert (wPath)
Case "pic3"
wPath = ThisWorkbook.Path & "\pic3.jpg"
ActiveSheet.Pictures.Insert (wPath)
End Select
End If
End SubRemélem, whatnot is ellátogat újra.
-
Delila_1
veterán
válasz
whatnot #17227 üzenetére
Eddig én sem tudtam, most próbáltam ki. Igazából nem az érvényesítés, hanem annak a látható jele, a nyíl a kép. Úgy látszik, ezt veszi első számú képnek – mivel ezt viszed be elsőként a lapra. A For Each ciklussal az összes képet töröltetted, közöttük az elsőt is.
Több próbát tettem, többször betöltöttem az érvényesítéssel a kiválasztott képet, minden rendben volt, de épp az előző percben megint eltüntette a nyilat.
Új hozzászólás Aktív témák
Hirdetés
- Bontatlan - BATTLEFIELD 1 Collectors Edition - Játékszoftver nélkül
- ROBUX ÁRON ALUL - VÁSÁROLJ ROBLOX ROBUXOT MÉG MA, ELKÉPESZTŐ KEDVEZMÉNNYEL (Bármilyen platformra)
- Bitdefender Total Security 3év/3eszköz! - Tökéletes védelem, Most kedvező áron!
- Eladó Steam kulcsok kedvező áron!
- Adobe Előfizetések - Adobe Creative Cloud All Apps - 12 Hónap - NYÁRI AKCIÓ!
- MSI CreatorPro Z16P - i7-12700H, RTX A5500, értintőkijelző
- BESZÁMÍTÁS! Dell Latitude 5550 üzleti -Intel Ultra 7 165U16GB DDR5 RAM 1TB SSD Intel Graphics WIN11
- Quadro FX 570 eladó
- Amazon Kindle 10th Generation ébresztős tok
- BESZÁMÍTÁS! Gigabyte GA-A620M R5 7600 32GB DDR5 512GB SSD RX 6700XT 12GB Rampage SHIVA Corsair 750W
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft
Város: Budapest