-
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
-
gsc73
aktív tag
Hy!
Hogyan tudom megváltoztatni egy cella háttérszínét VB-ben? A szintaxis miatt nem jövök rá. A cellákra a "Cells (x,25)" -tel hívatkoznék, mert egy ciklusban van.
g.
u.i.: különben a súgóban hogyan lehetne megkeresni az ilyen, és ehez hasonló kérdéseket, mert órákat töltök el azzal, hogy a megfeleő szintaxist kitaláljam. (makró rögzítése, és szerkesztése abben az esetben (sem ) használható)
[ Szerkesztve ]
kedvenc szavaim: palack, flakon, kredenc, fridzsider, ibrik, trafik, szvetter, fregoli, rezsó, sparhelt, vájdling, szifon, gardrób, partvis, spejz, tégely, drót, abrosz, lavór...szocreál.
-
Delila_1
Topikgazda
cells(x,25).select
selection.font.colorindex=színkód 'karater színe
selection.interior.colorindex=színkód 'háttér színeRögzítesz egy makrót, ahol megváltoztatod a karakter-, ill. a háttér színét. Onnan kimazsolázod azt, amire kiváncsi vagy.
Próba:For sor = 1 To 255
Cells(sor, 1).Select
Selection.Value = "Színkód=" & sor - 1
Selection.Font.ColorIndex = sor - 1
Cells(sor, 2).Select
Selection.Interior.ColorIndex = sor - 1
NextProgramozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
gsc73
aktív tag
válasz Delila_1 #3003 üzenetére
Szia!
Köszönöm a segítséget, amit leírtál, azzal sikerült megoldanom!
A makró rögzítése, átszerkesztése általában segít, de ebben az esetben nem segített.
Rögzítettem egy makrót, miközben megváltoztattam egy cella háttérszínét. Ezt kaptam eredményül:With Selection.Interior
.ColorIndex = 15
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
End WithEbből, sajnos nem sikerült kitalálnom a megfeleő szintaxist, bár az is igaz, hogy VB ismereteim sem széleskörűek... Aki gyakorlott, annak biztosan következik az egyikből a másik.
g.
[ Szerkesztve ]
kedvenc szavaim: palack, flakon, kredenc, fridzsider, ibrik, trafik, szvetter, fregoli, rezsó, sparhelt, vájdling, szifon, gardrób, partvis, spejz, tégely, drót, abrosz, lavór...szocreál.
-
fap333
aktív tag
Üdv mindenkinek!
A következő a problémám: Van egy táblázat, amit naponta egy oszloppal bővítenék, és mindig az utolsó 3 oszlop átlagát szeretném látni egy másik helyen.
Erre szeretnék valami egyszerű módszermert magamsól nem nagyon tudok mit kitalálni.
Előre is kössz!
Peti10 fajta ember létezik. Aki ismeri a bináris számrendszert, és aki nem.
-
TheDj
csendes tag
Sziasztok!
Kedves kolleganőnk olyat alkotott, ami fölött mi értetlenkedve álltunk...
Excelben dolgozik a Drága és az internetes közületi telefonkönyvből bemásolt egy e-mail címet. A cellában megjelenik a cím, viszont úgy tűnik nincs sehol egyik cellában sem. (fent a szerkesztési sorban nem látszódik semmi). Ha ráklikkelünk előjön az Outlook és egy előre beállított form alapján már írhatnánk is egy levelet. Jobb klikkre azonban feltűnik, hogy egy flash objektumról van szó.
Mivel automatikus mentésre van állítva és 5-10 percenként ment az "Undo" lehetőségét már elvesztettük. Valahogy szeretnénk kivenni belőle,de mivel egy cellában sem látszódik és kijelölni sem lehet, nem tudjuk mitévők legyünk!
Már rákerestem és az egyetlen link amit találtam nem működik. Pls, akinek van valami ötlete ossza meg velem/velünk!
Előre is nagyon köszönöm a segítséget! -
Delila_1
Topikgazda
A With sorban megadunk egy objektumot, amire a változtatások vonatkoznak. Jelen esetben a kijelölt terület (selection) hátterét (interior). A további sorok ponttal kezdődnek, amit úgy kell értelmezni, mintha a With sorban írtakat folytatnánk (With nélkül):
selection.interior.colorindex=15
selection.interior.pattern=xlsolid 'nincs mintázat
selection.interior.patterncolorindex=xlautomatic 'a mintázat színeA két utóbbi kitörölhető, mivel alapbeállítás, és akkor már nincs szükség a With, End With-ra sem.
Ezt a makrót most rögzítettem, a karakter típusát változtattam meg. '******-gal jelöltem, ami nem szükséges, törölhető.
With Selection.Font
.Name = "Tahoma"
.Size = 10 '******
.Strikethrough = False '******
.Superscript = False '******
.Subscript = False '******
.OutlineFont = False '******
.Shadow = False '******
.Underline = xlUnderlineStyleNone '******
.ColorIndex = xlAutomatic '******
End WithVégül ennyi marad: Selection.Font.Name = "Tahoma"
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
Egy próbát megér:
A Szerkesztés/Csatolások-at nézd meg. Ha "él" ez a menüpont, akkor módosítsd a csatolás címét saját magára, az érintett file-ra. Ezzel gyakorlatilag megszűnik a csatolás, a menüpont is le lesz tiltva.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
Másold be az alábbi makrót:
Sub Atlag()
Sheets("Munka1").Select
usor = ActiveSheet.UsedRange.Rows.Count
uoszlop = ActiveSheet.UsedRange.Columns.Count
Sheets("Munka2").Select
For sor = 2 To usor
Cells(sor, 1).Select
ActiveCell.FormulaR1C1 = "=AVERAGE(Munka1!RC[" & uoszlop - 3 & _
"]:RC[" & uoszlop - 1 & "])"
Next
End SubA Munka1 lap 3 utolsó oszlopát átlagolja a Munka2 A oszlopába.
Ha B oszlopba kell az átlag, a Cells(sor,1)-et írd át Cells(sor,2)-re, és az ActiveCell.FormulaR1C1 kezdetű sorban az uoszlop-3 és uoszlop-1 értékeket is növeld eggyel (uoszlop-3 és uoszlop-2).Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
lúzer
veterán
válasz Delila_1 #3009 üzenetére
Te aztán vágod!
Egy kérdésem lenne: honnan tudod, hogy melyik az utolsó oszlop?
Van információja az excelnek, hogy innentől kezdve üres oszlopok jönnek?
Mi ez az infó?ui: ActiveSheet.UsedRange.Columns.Count ez ugye?
[ Szerkesztve ]
MO. RIP. - az utolsó kapcsolja le a villanyt.
-
Delila_1
Topikgazda
Igen, és az utolsó sor értékét a fölötte lévő sor adja.
Vigyázni kell arra, hogy ha voltak az aktív táblázat területén kívül eső cellákban valamikor értékek (most már törölve vannak - szépen magyarul), vagy most is vannak benne kósza adatok, akkor azokkal a címekkel számol a makró, és hamis értéket ad.
A makróba érdemes egy stoppot tenni a két érték bekérése után, és ellenőrizni. Ha többet mutat az usor és az uoszlop nevű változó a kelleténél, a felesleges sorokat és oszlopokat törölni kell. Nem a benne lévő adatot, hanem a teljes sort ill. oszlopot.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
Másik módja az utolsó sor, ill. utolsó oszlop megkeresésének, arra az esetre, ha a lapon több, egymástól üres sorokkal, oszlopokkal elválasztott adataink vannak:
Kiválasztjuk egy olyan oszloponak az első celláját, amelyikben biztosan folyamatosan vannak az adatok, pl. A1.
Range("A1").Select
Selection.End(xlDown).Select ' ez azonos azzal, mint amikor Ctrl+le-nyilat nyomunk
usor = Selection.Row
Range("A1").Select
Selection.End(xlToRight).Select ' Ctrl+jobbra-nyílnak felel meg
uoszlop = Selection.ColumnHa biztos, hogy az alsó sorban minden oszlopban van adat, a második Range-re nincs szükség.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
jasszer
senior tag
Egy munkalapon belül szeretném kiszűrni az ugyanolyan tartalmú, azonos oszlopba tartozó cellákat (lehet h uaz az adat kétszer lett felvéve, két különböző cellába), van erre vmi gyors módszer? (az is elég lenne ha kiderülne h miből van duplikáció, nem kell h odaugorjon, v ilyesmi)
Apokalipszis? Ezeknek?!
-
mimi_bacsi
tag
Régebben szó volt róla, de most nem találom: egy cellában van több adatom:
pl: Név azonosító szám titulus dátum szám szám2 szám3Hogy tudom úgy szétszedni, hogy természetesen minden logikai rész egy cellába (külön) kerüljön?
(bocs, tudom, hogy már volt, de nem találom.....)
-
Amazonas
senior tag
válasz mimi_bacsi #3018 üzenetére
Kijelölöd a szétszedendő cellákat.
Adatok menü -> Szövegből oszlopok... -> "Tagolt" elé pötty, majd a "Tovább" után add meg, hogy mi választja el az adatokat (vessző, szóköz, stb.)
A legszerencsésebb a pontosvessző lenne, mint elválasztójel a forrásban, ahonnan másolsz.
A szóköz azért nem a legszerencsésebb, mert a vezeték- és keresztneveket is külön oszlopba fogja venni. Persze attól függ, hogyan jobb neked, meg milyen az adathalmaz...[ Szerkesztve ]
-
sonar
addikt
Azt meg lehet, csinálni, hogy a meghívott fv abba a cellába dolgozzon amelyikből veszi az adatot?
Itt ez a fv:=IF(G1="MEMORY:1",1,IF(G1="MEMORY:0",0,IF(G1="MEMORY:-1",-1)))
és az eredmény is a G1 cellába kerüljön vissza. Közbeszúrt oszlopokkal meg tudom csinálni, de az kicsit macerás
A tudást mástól kapjuk, a siker a mi tehetségünk - Remember: Your life – Your choices!
-
-
Delila_1
Topikgazda
Ha már Amanozas így megbízik bennem, itt a makró. (Igazad van Amazonas, körkörös hivatkozás lenne).
Sub mem()
Range("G1").Select
Selection.End(xlDown).Select
usor = Selection.Row
For sor = 1 To usor
nev = Right(Cells(sor, 7).Value, 2)
If Left(nev, 1) = ":" Then nev = Right(nev, 1)
Cells(sor, 7) = nev
Next
End Sub[ 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.
-
sonar
addikt
válasz Amazonas #3022 üzenetére
Igen tudom,hogy körkörös hivatkozás lenne. Ezért kérdeztem, hogy nincsen e rá vmilyen trükk. Makróval próbálkozom... csak vmilyen apróság mindig megszivat.
Vessző pontos vessző érdekes téma. Az én excelemben csak pontos vessző jó tagolásra, de a kolléga gépe meg csak a vesszőt fogadja el. pedig elméletileg ua minden.
A tudást mástól kapjuk, a siker a mi tehetségünk - Remember: Your life – Your choices!
-
-
Delila_1
Topikgazda
A soradik (aktuális sor) 7. (G) oszlopában levő értéket, annak is a jobboldali 2 karakterét.
Ezt teszi be a nev változóba.
Azután az esetleges mínusz jel miatt tovább vizsgálja. Ha a két karakterből álló nev baloldali 1 karaktere – left(nev,1) – kettőspont, akkor a nev jobboldali 1 karakterét veszi alapul, egyébként pedig a teljes nev változót (pl. -1).[ 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.
-
sonar
addikt
válasz Delila_1 #3032 üzenetére
Ha ez a H oszlop tartalma: USB:0 v USB:-1 v USB:1 akkor most ez a script mér nem akar lefutni rendesen? Elirtam vmit?
Range("H1").Select
Selection.End(xlDown).Select
usor = Selection.Row
For sor = 1 To usor
nev = Right(Cells(sor, 4).Value, 2)
If Left(nev, 1) = ":" Then nev = Right(nev, 1)
Cells(sor, 4) = nev
NextA tudást mástól kapjuk, a siker a mi tehetségünk - Remember: Your life – Your choices!
-
Delila_1
Topikgazda
-
sonar
addikt
-
sonar
addikt
Arra esetleg van megoldás, hogy vesszővel tagolt szöveget autómatán berántsa excelbe?
A tudást mástól kapjuk, a siker a mi tehetségünk - Remember: Your life – Your choices!
-
-
sonar
addikt
Sziasztok, a problémám, az, hogy van a következő szerkezetű fájlom több száz rekorddal. Az a hibás ahol van 0, azokra a sorokra lenne szükségem. Hogyan tudom én ezt kiszűrni?
Date Time Shift MEMORY USB HDD_READ TUNER2_INIT
2008.01.19 6:10 DE 1 0 1 1
2008.01.19 6:12 DE 1 1 1 1
2008.01.19 6:14 DE 1 1 1 1
2008.01.19 6:15 DE 1 0 -1 -1
2008.01.19 6:17 DE 1 0 1 1
2008.01.19 6:18 DE 0 1 -1 -1A tudást mástól kapjuk, a siker a mi tehetségünk - Remember: Your life – Your choices!
-
sonar
addikt
válasz Delila_1 #3041 üzenetére
Ezt próbáltam először, de ez nem jó mivel ha először a Memory -s 0 kat veszem ki, utánna már nem veszi ki a HDD-s 0-kat.
Most alakítgatom az általad adott makrót (ami 0,1,-1 re bontotta a táblát,) úgy nézki, hogy vhogy összejön.A tudást mástól kapjuk, a siker a mi tehetségünk - Remember: Your life – Your choices!
-
Amazonas
senior tag
Egyszerre több oszlopot is szűrni egyidejűleg, teljesen „személyre szabott” feltételekkel.
Ha jól értem, amit akarsz, akkor minden érintett oszlopot szűrj le így:
Autofilter-t ráteszed, ahogy Delila mondta, majd a az érintett oszlopoknál a legördülő menüből az (Egyéni...)/(Custom...) szűrőt választod.
A párbeszédablakban pedig add meg, hogy Tartalmaz (Contains) 0.[ Szerkesztve ]
-
Smogus
őstag
Segítsetek!
Egy excel munkafüzetben van több érték és nekem miden értéket 5%-al kell megnövelnem, hogy lehet ezt a legegyszerűbben?
Előre is köszi.
Ha az emberi agy elég egyszerű lenne ahhoz, hogy megértsük, akkor egyszerűségünkben erre már nem lehetnénk képesek. -- http://smogus.deviantart.com/ --
-
Delila_1
Topikgazda
=A1*(1+5%)
Ezt másold végig az adataid mellett.
Ha az értékeket fixre akarod venni (ne képlet legyen), akkor a növelt értékeket tartalmazó cellákat kijelölöd, másolod, és Szerkesztés/Irányított beillesztés/Értéket beilleszt – másik helyre, vagy az eredeti összegek helyére.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
Azt akarod, hogy minden sorod eltűnjön, ami nullát tartalmaz? Ha igen,
Első oszlop szűrése, törlés.
Második oszlop szűrése, törlés.
....
n-edik oszlop szűrése, törlés.
Ez gyorsabb művelet, mint a leírása.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
Új hozzászólás Aktív témák
- Microsoft licencek a legolcsóbban - UTALÁSSAL IS AUTOMATIKUS KÉZBESÍTÉS - Windows és Office
- Vírusirtó, Antivirus VPN kulcsok
- Bitdefender Total Security 3év/3eszköz! - "Tökéletes védelem most kedvező áron..."
- Windows, Office licencek a legolcsóbban, egyenesen a Microsoft-tól - 2990 Ft-tól!
- World of Warcraft Shadowlands Collectors edition EU EN