Keresés

Részletes keresés

bejglee Creative Commons License 2008.03.21 0 0 6940
Hogyan tudok sortörést hozzáadni egy szöveghez?

ÖSSZEFŰZ(D1; " "; D2; " "; D3; " "; D4; " "; D5)

Azt szeretném elérni, hogy A D1 - D5 cellák tartalma egy másik cellában, egymás alatt jelenjenek meg.

Ha az ÖSSZEFŰZ fgv-t használom, akkor egy cellába kerülnek ugyan, de egymás után.
Az egyes részek közé kellene egy sortörést (chr(10) vagy n) beszúrni.
Sehogy sem boldogulok vele.
Törölt nick Creative Commons License 2008.03.21 0 0 6939

Kimutatással egy oszlop értékeit? Azt hogyan lehet? Az a baj, hogy egymás után több különböző fájban lévő értékeket kellene feldolgozni úgy, hogy az éppen menyitott fálj "Munka1" munkaüzet "A" oszlopának adatait (a különböző adatok és ezek darabszáma) beírni a "Munka2" munkafüzet "A" és "B" oszlopába...majd bezár, új fájl nyitás... Szóval, erre (a különböző értékek számolására) keresek valami frappáns, gyors megoldást.

Előzmény: Delila_1 (6934)
Sánta Kutya (SK) Creative Commons License 2008.03.21 0 0 6938
A másodikra: szum(c5:c65536) (az a maximum) vagy pedig szum(c:c)-szum(c1:c4).

Az elsőre meg leszek lepve, ha lesz valami nem pilótavizsgás megoldás. Ha csak kevés oszlopot kell szummázni, akkor kigyűjtheted ezeket a bal oldali oszlopokba, és rögzítheted vízszintes görgetés ellen is, de fél képernyőszélesség felett ez már nem igazán barátságos megoldás...
Előzmény: bejglee (6937)
bejglee Creative Commons License 2008.03.21 0 0 6937
Sziasztok!
Van egy kimutatás (1 km széles), tele adatokkal.
Ráadásul rengeteg sort tartalmaz, ahol bizonyos oszlopokat szummázni kell.
Két kérdésem lenne ezzel kapcsolatban:

- arra gondoltam, hogy a szumma sort nem a tábla aljára raknám, hanem a táblázat tetejére (a fejlécek felé). Ekkor, ha rögzítem a fejléc sorát, akkor görgetés esetén (le-fel) mindig látszana az összeg sor.
Meg lehet-e oldani azt, hogy ez a szummákat tartalmazó terület akkor is a képernyő közepén maradjon, mikor jobbra-balra görgetem a táblázatot. Kvázi olyan legyen, mint egy lebegő kis terület, ami mindig egy helyen marad, bárhogy mozgok a táblázatban.

- szummázást hogyan lehet úgy beállítani, hogy nem az egész oszlopot jelölöm ki (SZUM(C:C)), hanem csak a fejléc alatti terület szerepeljen pl SZUM(C5:C).
Konkrét méretet nem tudok, mivel dinamikus a sorok száma. Csak azt tudom, hogy melyik sortól kell kezdeni a szummázást.

Bejglee.
Jozsef Creative Commons License 2008.03.21 0 0 6936
=HA(HIBÁS(ide jön a képleted);"n.a";idejön a képleted ismét)

Azt, hogy hibajelzés helyett nulla jelenjen meg én nem támogatnám, mert összekeverhető azzal az esettel, amikor az osztás eredménye ténylegesen nulla (nulla a számláló értéke, de a nevező nem nulla)
Üdv
József
Előzmény: imray (6935)
imray Creative Commons License 2008.03.21 0 0 6935
Hogy lehet megoldani azt, hogy #ZÉRÓÓSZTÓ! helyett csak egy nullát lássak, amikor meg már lesz mivel számolni, akkor már az értéket?
Delila_1 Creative Commons License 2008.03.21 0 0 6934

Kimutatással egyszerű megszámoltatni. Az Adat-hoz a "valami"-ket húzd az elrendezésnél.

Előzmény: Törölt nick (6931)
tbando Creative Commons License 2008.03.20 0 0 6932
Makroval nem tudom. Ezért én a DARABTELI-t alkalmazom hasonló esetekre. 
Előzmény: Törölt nick (6931)
Törölt nick Creative Commons License 2008.03.20 0 0 6931

Sziasztok!

 

A kérdésem az lenne, hogy egy közel 7000 soros adatállományból makróval hogyan lehet lekérdezni a különböző értékeket, ill. azt, hogy ezekből összesen hány darab van?

 

pl.

 

A oszlop

valami1

valami2

valami3

valami4

valami1

valami2

valami6

valami4

... 

 

Eredmény:

 

A oszlop  Boszlop

valami1   2

valami2   2

valami3   1

valami4   2

valami6   1

 

Előre is köszönöm.

Törölt nick Creative Commons License 2008.03.19 0 0 6930
Set LDR = Workbooks("x.xls").Sheets("Munka1")

Az x.xls nevű munkafüzetnek megnyitott állapotban kell lennie. (Ugyanakkor mindegy, hogy mi az elérési útvonala.)
Előzmény: v-m (6929)
v-m Creative Commons License 2008.03.19 0 0 6929
Helló,

Set LDR = ActiveSheet 'vagy mit akarsz

Nem találom, ha nem az aktívsítbe akarom rakni hanem mondjuk a C:x.xls-be, akkor mit is kell tennem?
Előzmény: Törölt nick (6926)
v-m Creative Commons License 2008.03.19 0 0 6928
Szia,
Pontosan ez az amit kerestem! Nagyon köszönöm a gyors segítséget!
Előzmény: Törölt nick (6926)
bejglee Creative Commons License 2008.03.19 0 0 6927
Köszi a javaslatokat!
Átnézem (megemésztem) őket.

Valójában folytonosak az intervallumok [0 - 49,9][50-100], de a jobb áttekinthetőség miatt kerekítettem (hogy az oszlopok egymás alatt legyenek).
De teljesen igazatok van, így zavaró és a megoldás szempontjából sem egyértelmű.
Előzmény: Törölt nick (6922)
Törölt nick Creative Commons License 2008.03.19 0 0 6926
Valami ilyesmire gondoltam:

Sub Loader()
Dim LDR As Worksheet, QueryString As String

Set LDR = ActiveSheet 'vagy mit akarsz
QueryString = "http://www.ittazadat.hu/lekerdezes.cgi?idoszak="
QueryString = QueryString & Format(Date - 1, "YYYY-MM-DD") & " 00:00:00"

With LDR.QueryTables.Add(Connection:="URL;" & QueryString, Destination:=LDR.Range("A1"))
.BackgroundQuery = True
.TablesOnlyFromHTML = True
.Refresh BackgroundQuery:=False
.SaveData = True
End With

End Sub
Előzmény: v-m (6923)
tbando Creative Commons License 2008.03.18 0 0 6925
Sajnos nem értem a feladatot. De az hogy egy dinamikus % is szerepel a kritériumok között, az szvsz legföljebb bonyolítja az összefűzés lehetőségét, de nem szünteti meg.
Előzmény: bejglee (6917)
Törölt nick Creative Commons License 2008.03.18 0 0 6924
Hát, ha programból le tudsz hívni egy weblapot, akkor nem lehet olyan nagy gond kicserélni a hivatkozási sztringben a dátumot jelentő részt...
Mi a probléma tulajdonképpen?
Előzmény: v-m (6923)
v-m Creative Commons License 2008.03.18 0 0 6923
Sziasztok!

Hajjjh de megoldhatatlan problémám van! :(
Egy weblapról kellene az excelnek külső adatokat átvenni... ez még menne is, de a hivatkozás egy része mindig változik. Pl. www.ittazadat.hu/lekerdezes.cgi?idoszak=2007-03-17 00:00:00
és az időszak helyén mindig a tegnapi dátumot szeretném látni.
Szerintetek?

Köszönöm előre is...
Törölt nick Creative Commons License 2008.03.18 0 0 6922
Nem bogarásztam végig a megoldásodat, de azt hiszem, valami hasonló az enyém is.
Kicsit talán egyszerűbb.
upload

De az továbbra is kérdés, hogy az 50%-os értékhez melyik betű tartozik.
Előzmény: Jozsef (6918)
Jozsef Creative Commons License 2008.03.18 0 0 6921
Mégegyszer több sorba írva
K2:=KÖZÉP(I1;
SZÖVEG.KERES("/";I1)+1;
SZÖVEG.KERES("/";I1;SZÖVEG.KERES("/";I1)+1)-(SZÖVEG.KERES("/";I1)+1))
L2:=ÖSSZEFŰZ("<=";
KÖZÉP(I1;SZÖVEG.KERES("/";I1;SZÖVEG.KERES("/";I1)+1)+1;
HOSSZ(I1)-SZÖVEG.KERES("/";I1;SZÖVEG.KERES("/";I1)+1)))
M2:=ÖSSZEFŰZ(">=";
KÖZÉP(I1;SZÖVEG.KERES("/";I1;SZÖVEG.KERES("/";I1)+1)+1;
HOSSZ(I1)-SZÖVEG.KERES("/";I1;SZÖVEG.KERES("/";I1)+1)))
Előzmény: Jozsef (6920)
Jozsef Creative Commons License 2008.03.18 0 0 6920
Úgy látszik levágta az index a sorok végét:
K2=KÖZÉP(I1;SZÖVEG.KERES("/";I1)+1;SZÖVEG.KERES("/";I1;SZÖVEG.KERES("/";I1)+1)-(SZÖVEG.KERES("/";I1)+1))
L2:=ÖSSZEFŰZ("<=";KÖZÉP(I1;SZÖVEG.KERES("/";I1;SZÖVEG.KERES("/";I1)+1)+1;HOSSZ(I1)-SZÖVEG.KERES("/";I1;SZÖVEG.KERES("/";I1)+1)))
M2:=ÖSSZEFŰZ(">=";KÖZÉP(I1;SZÖVEG.KERES("/";I1;SZÖVEG.KERES("/";I1)+1)+1;HOSSZ(I1)-SZÖVEG.KERES("/";I1;SZÖVEG.KERES("/";I1)+1)))

Előzmény: Jozsef (6918)
Törölt nick Creative Commons License 2008.03.18 0 0 6919
Nem egyértelmű a kiválasztási algoritmus.

Például
... A 1 0,5 X ...

esetén mi kerül az X helyére? A táblázatod alapján I és J egyaránt jó.
Előzmény: bejglee (6917)
Jozsef Creative Commons License 2008.03.18 0 0 6918
Megoldható a dolog, de egy kicsit macerás
Itt egy kép:



1. A módosítás az előbbi állományomhoz képest:
I1:=ÖSSZEFŰZ(F1;"/";G1;"/";H1)
J2:=BAL(I1;SZÖVEG.KERES("/";I1)-1)
K2:=KÖZÉP(I1;SZÖVEG.KERES("/";I1)+1;SZÖVEG.KERES("/";I1;SZÖVEG.KERES("/";I1)+1)-(SZÖVEG.KERES("/";I1)+1))
L2:=ÖSSZEFŰZ("<=";KÖZÉP(I1;SZÖVEG.KERES("/";I1;SZÖVEG.KERES("/";I1)+1)+1;HOSSZ(I1)-SZÖVEG.KERES("/";I1;SZÖVEG.KERES("/";I1)+1)))
M2:=ÖSSZEFŰZ(">=";KÖZÉP(I1;SZÖVEG.KERES("/";I1;SZÖVEG.KERES("/";I1)+1)+1;HOSSZ(I1)-SZÖVEG.KERES("/";I1;SZÖVEG.KERES("/";I1)+1)))

A H3 cella ugyanaz, mit az előző megoldásban
H3:=HA(HIBÁS(AB.MEZŐ(A:E;E1;J1:M2));"nincs ilyen";AB.MEZŐ(A:E;E1;J1:M2))

2. F18:H21 felvettem a kikeresendő értékeket.

I18:=ÖSSZEFŰZ(F18;"/";G18;"/";H18)
és ezt lemásolni a végéig(I21).

J17:=H3
(ez egy trükk, ugyanaz a hatása, mintha még egyszer beírnád ide a H3-ban lévő képletet)

3. Ezután kijelölöd a I17:J21 tartományt.
Adatok/ Adattábla menüpont
Oszlopértékek bemeneti cellája: I1

Ha bővítened kell a kikeresendő értékeket, akkor már csak az I oszlopban lévő képlet másolását és a 3. pontot kell megismételned a kibővített tartománnyal.
Hogy szebb legyen a táblázat, ezért az I oszlopot el is rejtheted, amikor nincs szükséged rá.
Üdv
József




Előzmény: bejglee (6915)
bejglee Creative Commons License 2008.03.18 0 0 6917
Igazad van!
Összefűzéssel lehet egyediséget garantálni (használom is), de sajnos ebben az esetben nem alkalmazható, mert az egyik keresendő érték egy százalékos szám, amit meg kell vizsgálni, hogy melyik intervallumba esik és attól függően visszaadni egy értéket pl.:
A 1 0,0 0,5 I
A 1 0,5 1,0 J
A 2 0,0 0,5 K
A 2 0,5 1,0 L
B 1 0,0 0,5 M
B 1 0,5 1,0 N
B 2 0,0 0,5 O
B 2 0,5 1,0 P

Egy másik munkalapon pedig vannak az adatok egymás alatt:
... A 2 0,34 X ...
... B 1 0,51 X ...
... A 1 0,72 X ...

Az X-ek helyére kellene kikeresni a felső mátrixból rendre a
K
N
J
értékeket.
Előzmény: tbando (6916)
tbando Creative Commons License 2008.03.17 0 0 6916
Szerintem nem tudod több sorra kiterjeszteni a kritériumtartományt. Ahány AB.MEZŐ függvényt csinálsz, mindegyikhez külön kritériumtartomány szükséges. Vagy egyenként szedegeted ki az outputokat. Elég babrásnak tűnik. Ezért azt hiszem mégis az FKERES-sel lenne érdemes próbálkoznod. Az is kicsit babrás, de nagy adattömegnél már rentábilis lehet. Ehhez az adatbázisod elé be kell szúrnod egy oszlopot amiben összefűzöd a kritériumokat. Ha tehát a 3-ik és a 7-ik oszlop adataival keresel, akkor ezen oszlopok celláit fűzöd össze.  És ezt az Fkeres már megtalálja. Az elsőt közülük. Tehát ha több van belőlük, esetleg célszerű lehet lesorszámozni  az azonos kritériumokat és a sorszámot is hozzáfűzni a kritériumhoz. 
Előzmény: bejglee (6907)
bejglee Creative Commons License 2008.03.17 0 0 6915
Sajnos az nem jó!

Az AB.MEZO() kritérium paraméterének kell egy tartomány.
Ez ugye a fejlécből áll és legalább egy sorból.
Ez jól is működik az első soromra, de a másodikra már "nincs ilyen" üzenet jön, mert a fejléc alatt már van egy sor, ami már bele tartozik a tartományba.
Tehát úgy kellene megadnom a tartományt, hogy az a fejlécet és az adott sort tartalmazza csak.

Pl:. AB.MEZO(A:E; E1; (L1:O1)*(L3:O3) )
vagy a Te példádnál: AB.MEZO(A:E; E1; (J1:M1)*(J3:M3) )
Tehát kimaradna a második sor.
Csak nem tudom, hogy hogyan lehet ilyen tartomány megadni!

Remélem érthetően írtam le!
Előzmény: Jozsef (6914)
Jozsef Creative Commons License 2008.03.17 0 0 6914
Irányított szűrő nem lenne elég neked?
Előzmény: bejglee (6909)
büdösbetyár Creative Commons License 2008.03.16 0 0 6913
szuper, köszi
toccata Creative Commons License 2008.03.16 0 0 6912
Szerintem a VLOOKUP magyarul FKERES a megoldás.
Előzmény: büdösbetyár (6910)
büdösbetyár Creative Commons License 2008.03.16 0 0 6911
nem ab.menü, hanem ab.mező
lama vok-e?
büdösbetyár Creative Commons License 2008.03.16 0 0 6910
Sziasztok

nem vagyok egy nagy excel használó, de ezt tényleg nem tudom megoldani, segítsetek légyszi, ha tudtok.
Az 1. munkafüzet lapon van egy sorszámozott listám (1, 2, 3, 4, 5, 6, 7), a 2.-on szintén megvan ugyanez a lista, csak kicsit másképp (1, 2, 3, 3, 4, 5, 6, 6, 7), a lényeg, hogy nem ugyanaz a sorrend, lehet akár fordított is.
A 2.-ból akarom átvenni az adatokat az adott sorszámhoz (1-1, 2-2, 3-3, 4-4 stb), de ugye a 2.-ban eltolódik a lista, teljesen rendszertelenül.
Az AB.MENÜ-vel próbálkoztam, de semmi eredmény.

Pl:

1-es lap

1
2
3
4
5
6

2-es lap

1 123
2 432
3 545
3 545
4 321
5 342
5 342
6 523

és az 1-es lapon ezután ennek kéne szerepelni

1 123
2 432
3 545
4 321
5 342
6 523

remélem érthető és tudtok segíteni
köszi
bejglee Creative Commons License 2008.03.14 0 0 6909
Bocs, az első képbeszúrásom!

Előzmény: bejglee (6908)
bejglee Creative Commons License 2008.03.14 0 0 6908
Az előbb lemaradt a kép!
Előzmény: Jozsef (6904)
bejglee Creative Commons License 2008.03.14 0 0 6907
Lenne ezzel kapcsolatban még egy kérdésem:
Most már értem a működését, de arra nem találom a választ, hogy hogyan tudom ezt több egymás alatti sorra kiterjeszteni.
Ez csak akkor működik tökéletesen, ha a mezőnevek alatt csak egy sor található.
AB.MEZO($A:$E; $E$1; $L$1:$O2)
Ha alkalmazni szeretném a következő sorra, akkor ezt kelle írnom:
AB.MEZO($A:$E; $E$1; $L$1:$O3)
De így már nem jó, mert a 2. sor közbeszól (mivel így több találat van), nem lesz eredmény.
Létezik erre megoldás, hogy csak a fejlécet és az érintett sort vizsgálja?
Előzmény: Jozsef (6904)
bejglee Creative Commons License 2008.03.14 0 0 6906
Húúúú!
Köszi!
Még nem pontosan értem hogyan működik, de működik! :)
Előzmény: Jozsef (6905)
Jozsef Creative Commons License 2008.03.14 0 0 6905
Az index jó összenyomta ezt a képet :(
A hosszú képlet:
=HA(HIBÁS(AB.MEZŐ(A:E;E1;J1:M2));"nincs ilyen";AB.MEZŐ(A:E;E1;J1:M2))
Előzmény: Jozsef (6904)
Jozsef Creative Commons License 2008.03.14 0 0 6904
Szia!

A megoldás nem az FKERES, hanem az egyik adatbázis függvény, az AB.MEZŐ.
A megoldás leolvasható a következő ábráról.

Előzmény: bejglee (6902)
bejglee Creative Commons License 2008.03.14 0 0 6903
Sziasztok!
Egy FKERES() függvényt szeretnék megvalósítani, de egy kicsit bonyolultabb formában.

Egy hasonló felépítésű adathalmazom van:

A 1 0 4 X
A 1 5 9 Y
A 2 0 4 Z
A 2 5 9 I
B 1 0 4 J
B 1 5 9 K
B 2 0 4 L
B 2 5 9 N

A hövetkező keresésre lenne szükségem PL.:
legyenek az első sorban a következő értékek: F1="A", G1=1, H1=63.
Ha egy munkalap egy sorának celláira ez teljesül: F1=A és G1=1 és a H1 50 és 99 között van, akkor adja vissza az Y-t.
Tehát az FKERES() fgv metodikája alapján keresek három oszlopban és ha mind a három feltétel teljesül egy sorban, akkor visszaadom egy bizonyos oszlop megfelelő sorában található értéket.

Üdv,
Bejglee
bejglee Creative Commons License 2008.03.14 0 0 6902
Sziasztok!
Egy FKERES() függvényt szeretnék megvalósítani, de egy kicsit bonyolultabb formában.

Egy hasonló felépítésű adathalmazom van:

A 1 0 49 X
A 1 50 99 Y
A 2 0 49 Z
A 2 50 99 I
B 1 0 49 J
B 1 50 99 K
B 2 0 49 L
B 2 50 99 N

A hövetkező keresésre lenne szükségem PL.:
legyenek az első sorban a következő értékek: F1="A", G1=1, H1=63.
Ha egy munkalap egy sorának celláira ez teljesül: F1=A és G1=1 és a H1 50 és 99 között van, akkor adja vissza az Y-t.
Tehát az FKERES() fgv metodikája alapján keresek három oszlopban és ha mind a három feltétel teljesül egy sorban, akkor visszaadom egy bizonyos oszlop megfelelő sorában található értéket.

Üdv,
Bejglee
stromba Creative Commons License 2008.03.12 0 0 6901
excel 2007
Előzmény: Delila_1 (6900)
Delila_1 Creative Commons License 2008.03.12 0 0 6900
Azt hittem, létezik valamilyen módszer az ezres lista bővítésére.
Előzmény: magyarpityu (6899)
magyarpityu Creative Commons License 2008.03.12 0 0 6899

Úgy értem, használható (nem felvehető). Tehát a táblázat első 1000 különböző eleme megjelenik a szűrő legördülő menüjében, de ha 1000-nél több eltérő elem van, akkor a többi kimarad ebből a listából, ennek ellenére mégis szűrhető marad, mert ott van, csak nem látszik.

 

Pl. van egy nagy könyvlistánk, ahol az ISBN-szám szerint keresünk. Leszűrjük és megnézzük, van-e 9789639301191 számú. Nincs a legördülő menüben, tehát nincs ilyen. De vajon tényleg nincs? Most írjuk be a megjelenítési feltételek közé, hogy tartalmaz: 9639. Ekkor leszűri azokat, amelyek tartalmazzák ezt a számot, attól függetlenül, hogy ezek egy része talán nem is látszik a legördülő menüben.

 

Tehát az AutoSzűrő jól működik, de ne csak a legördülő menüt nézzük, mert a lista csak 1000 elemet mutat!

Előzmény: Delila_1 (6898)
Delila_1 Creative Commons License 2008.03.12 0 0 6898
Hol vehető fel?
Előzmény: magyarpityu (6897)
magyarpityu Creative Commons License 2008.03.12 0 0 6897
Nem válik megbízhatatlanná, de a legördülő menü csak 1000 tételt tud listázni. Ettől nagyobb táblázatban marad a szűrés, mert ott vannak a hiányzó elemek is, csak nem látszanak a legördülő menüben, ám a megjelenítési feltételek közé felvehetőek.
Előzmény: imray (6896)
imray Creative Commons License 2008.03.12 0 0 6896
Az AutoSzűrő hány sornál/mekkor táblázatnál válik megbízhatatlanná?
Delila_1 Creative Commons License 2008.03.11 0 0 6895
Nem biztos, hogy jól értem. Ha azokat a tételeket akarod kilistázni, amik előfordulnak az oszlopodban, Adatok/Szűrő/Irányított szűrő/Más helyre másolja, és Csak az egyedi rekordok megjelenítése.
Előzmény: Ryu (6893)
Delila_1 Creative Commons License 2008.03.11 0 0 6894

Az első kérdésedre:

Jelöld ki a B oszlopot. Szerkesztés/Ugrás/Irányított/Üres cellák. Ez kijelöli az üreseket az oszlopban, és az aktuális az első üres cella lesz. Ide beírod: "="  (idézőjel nem kell) és balra nyíl, Ctrl+Enter az összes kijelöltbe egyszerre beírja. Ezután érdemes újra kijelölni az oszlopot, másolás, ugyanoda irányított beillesztés, értéket. Ha ezt kihagyod, a legközelebbi rendezésnél összekuszálódnak az adataid.

Előzmény: Ryu (6893)
Ryu Creative Commons License 2008.03.11 0 0 6893
Mégsem megy így. Arra lenne szükségem, hogy ha az 'A' oszlopom első 100 sorában van adat, viszont a 'B' oszlopom első 100 sorában itt-ott van néhány üres cella, akkor a függvény a 'B' oszlop üres celláit, helyettesítse, töltse ki az 'A' oszlop megfelelő cellájával (azaz, hogy a különbségük nulla legyen) de csak ott ahol eredetileg üres cella volt... Esetleg erre valami tipp?

Plusz ami még érdekelne, hogy ha van egy oszlopom amiben van X db rekord (sor), de ez az X darab csak Y eltérőből fajta rekordból tevődik össze (Y<X), akkor van-e olyan függvény ami kilistázza az Y db eltérőt az X db közül. Azaz minden típusból csak egy db legyen, egy másik oszlopban.

Köszönöm előre is a segítséget, és bocs az amatőr kérdésekért...
Előzmény: byszka11 (6891)
Ryu Creative Commons License 2008.03.11 0 0 6892
Köszönöm a segítséget!
Előzmény: byszka11 (6891)
byszka11 Creative Commons License 2008.03.10 0 0 6891
A legegyszerűbb megoldás a Szerkesztés/Csere (Ctrl+H)

Jelöld ki a táblázatodat, majd Ctrl+H . Itt a keresett szöveg mezőt üresen hagyod, a csere erre mezőt kitöltöd, arra amit meg szeretnél jeleníteni az üres cellákban. Az Összes cseréje gombbal "kitöltődik" az összes üres cella.
Előzmény: Ryu (6890)
Ryu Creative Commons License 2008.03.10 0 0 6890
Még egy kérdés. Ha van egy oszlopom amelyben vannak értékekek, de egy-két cella üres, akkor van-e olyan függvény amely segítségével minden üres cellába be tudok írni egy előre megadott karaktersort? Azaz ki tudom tölteni az üres helyeket (cellákat).
Ryu Creative Commons License 2008.03.10 0 0 6889
Köszönöm szépen, sikerült. Már próbálkoztam ezzel a függvénnyel, csak a cellaformázást sikerült elrontani, ezért gyorsan fel is adtam. De most működik! Szóval köszönet mégegyszer!
Előzmény: Törölt nick (6888)
Ryu Creative Commons License 2008.03.10 0 0 6887
Üdv mindenki! Nem vagyok nagy Excel guru, csak néhány egyszerűbb dolgot tudok kivitelezni. Sajnos most belefutottam egy bonyolultabb problémába.

Az alábbi linken látható a probléma .jpg formátumban, illetve feltettem .xls-ben is, ha valaki letöltené (naponta frissül a NOD-om, de vírus ellenőrzést azért csináljatok).

http://hadoken.extra.hu/kepek/help.JPG
http://hadoken.extra.hu/help.xls

Szóval egy olyan függvény kéne, amivel ki lehetne számolni, hogy melyik dolgozó hány órát dolgozott összesen az adott hónapban (a táblázatban csak pár nap szerepel...). A gond csak az, hogy ha egyik dolgozó valamelyik nap nem dolgozik, aznap a listára nem kerül fel. Szóval egy olyan függvény kellene ami a névvel egy sorban található ledolgozott óra értékeket összegezné és rendelné névhez.

Huhh, lehet, hogy nem túl érthető, de remélem igen. Előre is óriási köszönet a segítségért!!
Ryu Creative Commons License 2008.03.10 0 0 6886
Üdv mindenki! Nem vagyok nagy Excel guru, csak néhány egyszerűbb dolgot tudok kivitelezni. Sajnos most belefutottam egy bonyolultabb problémába.

Az alábbi linken látható a probléma .jpg formátumban, illetve feltettem .xls-ben is, ha valaki letöltené (naponta frissül a NOD-om, de vírus ellenőrzést azért csináljatok).

http://hadoken.extra.hu/kepek/help.JPG
http://hadoken.extra.hu/help.xls

Szóval egy olyan függvény kéne, amivel ki lehetne számolni, hogy melyik dolgozó hány órát dolgozott összesen az adott hónapban (a táblázatban csak pár nap szerepel...). A gond csak az, hogy ha egyik dolgozó valamelyik nap nem dolgozik, aznap a listára nem kerül fel. Szóval egy olyan függvény kellene ami a névvel egy sorban található ledolgozott óra értékeket összegezné és rendelné névhez.

Huhh, lehet, hogy nem túl érthető, de remélem igen. Előre is óriási köszönet a segítségért!
nuq5let Creative Commons License 2008.03.10 0 0 6885
Köszönöm a segítséget! Tökéletesen münködik :o)
Előzmény: Törölt nick (6882)
Delila_1 Creative Commons License 2008.03.08 0 0 6884

Elnézést.

 

A makró beírását Jimmy the Hand a #6663 sz. hozzászólásában írta le.

Előzmény: Delila_1 (6883)
Delila_1 Creative Commons License 2008.03.07 0 0 6883

Megnyitod a kimutatást tartalmazó füzetet. Bemásolod a füzetedhez a VBE-be a makrót, amit találtál (köszönöm, nekem is szükségem van rá).

 

A kimutatás lapra állsz, Eszközök/Makró/Makrók, indítod a DeleteOldItems nevűt.

 

A másolás módját a VBE-be Jmmy The Hand leírta a #6747-ben.

Előzmény: imray (6881)
imray Creative Commons License 2008.03.07 0 0 6881
Na most segítsetek. Én a makrókhoz, Virtual Basic-hez nem értek. De szeretnék.
Itt egy megoldási lehetőség: http://www.contextures.com/xlPivot04.html

Előzmény: Delila_1 (6880)
Delila_1 Creative Commons License 2008.03.07 0 0 6880
Ez engem is érdekel, én is régebbi verziót használok.
Előzmény: imray (6878)
repuleskepekben Creative Commons License 2008.03.07 0 0 6879

Szia!

 

Köszönöm a segítséget, annyira egyszerű, hogy ez eszembe sem jutott...

Előzmény: THT (6877)
imray Creative Commons License 2008.03.07 0 0 6878
Majdnem megoldódott a Pivot-táblákkal kapcsolatos problémám.
Ha nem akarom látni a már nem is létező értékeket a szűrésben, akkor:
Excel 2007-ben: Kimutatás beállításai > Adatok > Adatforrásból törölt elemek megőrzése > Semennyi

Azonban ilyen lehetőséget nem találok az Excel 2002 (SP3) menüiben.
Mi a megoldás? Mert valami csak van...
Előzmény: imray (6852)
THT Creative Commons License 2008.03.07 0 0 6877

 

Ehez mit szólsz?

 

"rajzolás" Eszköztárat be kel kapcsolni, ott már szerintem eligazodsz, elég sokmindent lehet rajzolni, vonalat is :)

Előzmény: repuleskepekben (6876)
repuleskepekben Creative Commons License 2008.03.07 0 0 6876

Üdv mindenkinek!

 

Azt szeretném megtudni, hogy Excelben lehet-e olyat csinálni, hogy mondjuk egy cellát, legyen pl:B2 ,és mondjuk egy másik cella, pl: G7, ezeket egy vonallal összekötni, azaz, mikor ha kinyomtatom, látszódjék, hogy ez a két cellának valami köze van egymáshoz.

 

Köszönöm előre is a segítségeket.

Delila_1 Creative Commons License 2008.03.06 0 0 6875
Jó pihenést - ha pihenni "tűnsz el".
Előzmény: Törölt nick (6874)
Törölt nick Creative Commons License 2008.03.06 0 0 6874
További jó munkát ;)
Most eltűnök pár napra.
Előzmény: Delila_1 (6872)
nuq5let Creative Commons License 2008.03.06 0 0 6873

Sziasztok!

 

Hogy tudom lekezelni, makróban, hogy a szürő hozott e eredményt. Azt szeretném, hogy egy adott müveletsor akkor hajtodjon végre ha a szürés nem talált egy rekordot sem

 

Delila_1 Creative Commons License 2008.03.06 0 0 6872

Ez az! Igen. Így már csodálatosan működik.

Köszönöm.

Előzmény: Törölt nick (6871)
Törölt nick Creative Commons License 2008.03.06 0 0 6871
Ha a Label objektum Caption tulajdonsága tartalmazza a hyperlinket, akkor az alábbi kód Label-re kattintás esetén megjeleníti (v. legalábbis megpróbálja megjeleníteni) a link által hivatkozott oldalt v. fájlt, az alapértelmezett alkalmazásban. Pl. kép vagy URL esetén Internet Explorer, .xls esetén Excel, stb.

Private Sub Label1_Click()
ThisWorkbook.FollowHyperlink Address:=Label1.Caption, NewWindow:=True
End Sub
Előzmény: Delila_1 (6870)
Delila_1 Creative Commons License 2008.03.06 0 0 6870

miért textboxot használsz?

Az általános és teljes járatlanságom miatt. Először készítek UserFormot, és rögtön táblázatos kiírással és hyperlinkkel kezdem.

 

A bevitelnél

ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:=k, TextToDisplay:=k sor viszi be egy cellába a fotót, ahol a k az útvonalat, kép címét és kiterjesztését tartalmazza. A cellában kattintásra elő is jön a fotó.

A lekérdezésben az aktuális TextBoxba ennek a cellának a tartalmát íratom, itt akadtam el.

 

Most tettem fel egy Labelt. Oda be tudom íratni a cella tartalmát, de megint megállt a tudományom.

Tudnál segíteni?

Törölt nick Creative Commons License 2008.03.06 0 0 6869
Azért nem értem, mert ha a Textboxot programból feltöltöd adatokkal, akkor (tudomásom szerint) csak a Change esemény váltódik ki. Míg ha egérrel kattintasz rá, akkor az Enter, MouseDown, MouseUp (majd később az Exit) események.

Szóval szerintem nem kellene ütközésnek lennie. Hogy néz ki az eseménykezelő rutinod?

Amúgy adatok megjelenítésére miért textboxot használsz? Én inkább címkéket (Label) használnék. Egyrészt a Labelnek van Click eseménye míg a Textboxnak nincs. Másrészt a Labelre kattintva a felhasználó nem esik abba a tévképzetbe, hogy neki ott szövegszerkesztenie kell valamit. Ha csak a kinézet miatt, nos hát címke is tud úgy kinézni, mint egy szövegdoboz. Hm?
Előzmény: Delila_1 (6868)
Delila_1 Creative Commons License 2008.03.06 0 0 6868

A lekérdezés form képét tettem be.

A legördülőből kiválasztom az utcát, ennek hatására az alatta lévő táblázatba beíródnak az adatok, többek között az utcához tartozó fotók hyperlinkje is. Ha eseménykezelést teszek a fotó TextBoxához, az adat beírására is eseményt akar kezelni. Holott én azt szeretném, hogy a betöltött és mutatott hyperlinkre kattintva megjelenne a fotó.

Előzmény: Törölt nick (6867)
Törölt nick Creative Commons License 2008.03.05 0 0 6867
"Hamvábaholt ötlet volt az esemény kezelés a TextBoxhoz. Lekérdezésben jelennek meg a hyperlinkek. Mikor a TextBox-ba betöltődnek a hyperlinkek, azt is eseményként érzékeli, nemcsak ha rákkattintok a linkre."

Nem teljesen értem a problémát, illetve azt, hogy mi a kérdés.

"A TabIndexet könnyebb kezelni a form-on jobbra kattintva megjelenő Tab Orderrel. Felsorolja a formon lévő objektumokat, és könnyen, fel-le léptetve lehet módosítani a bejárási útvonalat."

Ennek örülök :)
Nem egy alkalommal vesződtem már vele nagyon sokat, míg rendesen sorbaraktam az objektumaimat gyalog-módszerrel. Kösz a tippet!
Előzmény: Delila_1 (6866)
Delila_1 Creative Commons License 2008.03.05 0 0 6866

Hamvábaholt ötlet volt az esemény kezelés a TextBoxhoz. Lekérdezésben jelennek meg a hyperlinkek. Mikor a TextBox-ba betöltődnek a hyperlinkek, azt is eseményként érzékeli, nemcsak ha rákkattintok a linkre.

 

A TabIndexet könnyebb kezelni a form-on jobbra kattintva megjelenő Tab Orderrel. Felsorolja a formon lévő objektumokat, és könnyen, fel-le léptetve lehet módosítani a bejárási útvonalat.

 

Nem tudtam körbeírni a képet.

Előzmény: Törölt nick (6863)
hemu5 Creative Commons License 2008.03.05 0 0 6865
Hú de jó!! Működik. Köszönöm sokat segítettél.
Előzmény: Törölt nick (6862)
Delila_1 Creative Commons License 2008.03.05 0 0 6864

Kösz szépen, most vettem észre a válaszodat. Erre még a régi, Accesses (gyenge) ismereteimből emlékeztem, meg is csináltam.

 

Már csak egyetlen gondom van. Az adatok közé egy előző útmutatásod szerint bevittem a csatolandó jpg-k hyperlinkjét, de a lekérdezésben csak az útvonal jelenik meg, nem tudom előcsalni magát a fotót. Most, miközben pötyögtetek, eszembe jutott, hogy a kérdéses TextBoxokhoz kellene makrót csatolni. Megbróbálom.

 

Előzmény: Törölt nick (6863)
Törölt nick Creative Commons License 2008.03.05 0 0 6863
"(és nem is 80, hanem 160 db van belőlük), mert táblázatosan, 20 sorban helyeztem el őket,"

Hajjaj, ezt ismerem...
Egy tanács: érdemes a Textboxok felpakolása után ellenőrizni és szükség esetén javítani a bejárási sorrendet, vagyis azt, hogy a TAB lenyomásakor a kurzor melyik szövegdobozba ugrik át. Egy jól megtervezett sorrend nagyon meg tudja könnyíteni az adatbevitelt (már a felhasználói oldalon).

A bejárási sorrendet a Textbox objektum TabIndex tulajdonságával lehet beállítani. Nullával kezdődik a sorszámozás. Ha valamelyik vezérlőelem tabindexét módosítod, nyilván másoké is változni fog, számomra nem teljesen világos logika szerint. Ezért, ha azt akarod, hogy az egyszer már jól beállított tabindexek megmaradjanak, érdemes a nullával kezdeni, és egyesével felfelé menni a számokkal. Ilyen esetben az aktuális sorszám alatti számok (tehát amiket eddig beállítottál) nem változnak már meg, csak ami fölötte van, de azok meg úgyis sorra kerülnek még, és megkapják a végleges értéküket.

Előzmény: Delila_1 (6861)
Törölt nick Creative Commons License 2008.03.05 0 0 6862
Ezt próbáld meg:

Sub Összefésülés()
Dim S1 As Worksheet, S2 As Worksheet
Dim R1 As Range, R2 As Range, c As Range, Hit As Range

Set S1 = Workbooks("cimlista.xls").Sheets("részletes")
Set S2 = Workbooks("sm.xls").Sheets("Munka1")
Set R1 = S1.Range("B:B")
Set R2 = S2.Range("B3"): Set R2 = Range(R2, R2.End(xlDown))

For Each c In R2
If c = "" Then Exit For
Set Hit = R1.Find(what:=c, LookIn:=xlValues, LookAt:=xlWhole)
If Hit Is Nothing Then
c.EntireRow.Copy S1.Range("B" & S1.Rows.Count).End(xlUp).Offset(1, -1)
Else
c.EntireRow.Copy Hit.Offset(, -1)
End If
Next
End Sub

A vastagbetűs sor a 3000 soros adatbázis B3 cellájától kezdődően lefelé, az első üres celláig tartó cellatartományt definiál.
Az 1004-es run-time errort az okozta, hogy egy teljes sort másoltam ki, majd a cél munkalapon a B oszloptól kezdődően akartam beilleszteni. Így a sor utolsó cellája kilógott (volna) a munkalapról.

Remélem, ez már jó lesz.
Előzmény: hemu5 (6859)
Delila_1 Creative Commons License 2008.03.05 0 0 6861

Köszönöm, megint kisegítettél.

 

A feladat csak annyival bonyolultabb, hogy nem simán T1, T2...Tn a textboxok neve(és nem is 80, hanem 160 db van belőlük), mert táblázatosan, 20 sorban helyeztem el őket, és a megnevezésük utal a táblázatban elfoglalt pozíciójukra. Ugyanúgy a jelölőké is.

 

A válaszoddal nagyon sok munkát sikerült megspórolni.

Előzmény: Törölt nick (6855)
Törölt nick Creative Commons License 2008.03.04 0 0 6860
holnap...
Előzmény: hemu5 (6859)
hemu5 Creative Commons License 2008.03.04 0 0 6859
Ha kitörlöm az első két sort akkor Run-time error'1004' el elszáll a "c.EntireRow.Copy Hit" sornál
hemu5 Creative Commons License 2008.03.04 0 0 6858
Bocs nem figyeltem, az 1-2 sorom egyesített cella,(fejléc). B osszlop első sorában nincs semmi. Azt meg lehetne-e csinálni hogy a 3.sortól kezdje az egyesítést? Köszönöm
Előzmény: Törölt nick (6857)
Törölt nick Creative Commons License 2008.03.04 0 0 6857
Az sm.xls "részletes" nevű munkalapján a B oszlopban összefüggő adatsor van?
Mi van pl. a B2 cellában?
Előzmény: hemu5 (6856)
hemu5 Creative Commons License 2008.03.04 0 0 6856
Lefut hiba nélkül,csak az a gond, hogy a régi adatbázist nem frissíti az új adatokkal. Viszont annyit csinál hogy az sm.xls első sortát átmásolja a cimlista.xls utolsó sorbába.
Előzmény: Törölt nick (6851)
Törölt nick Creative Commons License 2008.03.04 0 0 6855
Jelölőnégyzet esetén pedig

for a = 1 to 40
nev="C"& a
Userform1.Controls(nev).Value = ....
next
Előzmény: Delila_1 (6853)
Törölt nick Creative Commons License 2008.03.04 0 0 6854

for a = 1 to 80
nev="T"& a
Userform1.Controls(nev).Text = ....
next

Előzmény: Delila_1 (6853)
Delila_1 Creative Commons License 2008.03.04 0 0 6853

Helló,

Még mindig űrlap gondjaim vannak.

Egy MultiPage egyik lapján 80 db szövegdoboz és 40 jelölőnégyzet adatait kell feltöltenem, ill. törölnöm a tartalmukat. Úgy adtam nevet nekik (T1, T2, C1, C2), hogy ciklusból hajthassam végre a műveleteket, de nem találom, hogyan hivatkozzak rájuk.

Ilyent próbáltam:

 

for a = 1 to 80

nev="T"& a

TextBox(nev)= ....

next

 

Ezt nem fogadja el. Tudnátok segíteni?

 

imray Creative Commons License 2008.03.04 0 0 6852
Van több régi Excel file-om, amelyekben a pivot-táblák forrásadatait rendszeresen cserélgetem, aztán a kimutatást frissítem.
Ennek mára az lett az eredménye, hogy a kimutatásban a szűrések állítgatásakor megjelenik minden olyan lehetőség, ami valaha is kiválasztható volt, holott a legfrissebb forrásban már nem is szerepel. pl. 2004 decembere simán kiválasztható, pedig most csak 2008-as adatokkal dolgozom.
Hogy lehet ezt aktualizálni?
Törölt nick Creative Commons License 2008.03.04 0 0 6851
Nincs mit. Ha jól raktam össze, akkor ez lesz a megfeleló makró. Javaslom, futtatás előtt készíts biztonsági másolatot mindkettőről, és persze mindkettőnek megnyitva kell lenni a futás idején.
Ha valami még mindig nem stimmel, akkor légyszi jegyezd fel a hibaüzenetet, és legközelebb írd meg.

Sub Összefésülés()
Dim S1 As Range, S2 As Range, c As Range, Hit As Range

Set S1 = Workbooks("cimlista.xls").Sheets("részletes").Range("B:B") 'ez a régi adatbázis, a 20000 sor
Set S2 = Workbooks("sm.xls").Sheets("Munka1").Range("B:B") 'ez a frissítés, a 3000 sor

For Each c In S2
If c = "" Then Exit For
Set Hit = S1.Find(what:=c, LookIn:=xlValues, LookAt:=xlWhole)
If Hit Is Nothing Then
c.EntireRow.Copy S1.Parent.Range("A" & Rows.Count).End(xlUp).Offset(1)
Else
c.EntireRow.Copy Hit
End If
Next
End Sub

PS:
Az írásjelekkel lehetnél kicsit bőkezűbb, mert percekbe telt, mire megértettem a 2. mondatodat ;)
Előzmény: hemu5 (6850)
hemu5 Creative Commons License 2008.03.04 0 0 6850
Köszönöm a makrót de valamit elszúrok mert nem akar lefutni. Ha megkérlek behelyettesíted az adatokat a 20000-es adatbázisnál cimlista.xls lapfül neve pedig részletes B oszlop egyezik a 300-as adatbázissal ami pedig sm.xls munka1
Köszönöm
Előzmény: Törölt nick (6847)
Törölt nick Creative Commons License 2008.03.04 0 0 6849
Set Tartomany = Range("A2:A" & Rows.Count)

A tartomány teljes definíciójához hozzátartozik a munkafüzet és a munkalap megadása is. Ezek híján (pl. a fenti esetben) a kifejezés az aktív munkafüzet aktív munkalapjára vonatkozik. Tisztességes így lenne:

Dim WB As Workbook, WS As Worksheet, Tartomany As Range
Set WB = Workbooks("valami.xls")
Set WS = WB.Sheets("Munka1")
Set Tartomany = WS.Range("A2:A" & WS.Rows.Count)
Előzmény: bejglee (6848)
bejglee Creative Commons License 2008.03.04 0 0 6848
Köszi!
Szuperül működik!
Azért egy fél napot megspóroltál nekem!

Még egy kérdésem lenne:
A táblázatban van fejlécem. Hogyan tudok úgy létrehozni Range-t, hogy ne a teljes oszlop legyen benne.
Szóval a fejléc (első cella) kivételével az egész oszlop legyen a része.
Valami ilyesmire gondoltam:

Set Tartomany = Range("A2:A")

Sajna ez így nem jó :(
Előzmény: Törölt nick (6836)
Törölt nick Creative Commons License 2008.03.04 0 0 6847
Az összefésülés számomra könnyebbnek tűnik (mivel a másikra nincs ötletem :))

Sub Összefésülés()
Dim S1 As Range, S2 As Range, c As Range, Hit As Range

Set S1 = Sheets("Adat1").Range("A:A") 'ez a régi adatbázis, a 20000 sor
Set S2 = Sheets("Adat2").Range("A:A") 'ez a frissítés, a 3000 sor

For Each c In S2
If c = "" Then Exit For
Set Hit = S1.Find(what:=c, LookIn:=xlValues, LookAt:=xlWhole)
If Hit Is Nothing Then
c.EntireRow.Copy S1.Parent.Range("A" & Rows.Count).End(xlUp).Offset(1)
Else
c.EntireRow.Copy Hit
End If
Next
End Sub

A makró soronként végigmegy a 3000 adatos táblázat első oszlopán, és megnézi, hogy az ott talált azonosító megvan-e a 20000 soros táblázat első oszlopában. Ha igen, akkor a teljes sort felülírja. Ha nem, akkor hozzácsapja a 20000 sor után.

A vastag betűs sor azt teszi, hogy ha a 3000 soros adatbázisban olyan sorhoz ér, amelynek az első cellájában nincs semmi, akkor kilép a ciklusból. (Ezzel tesztelem, hogy van-e még mit át másolni.)
Tehát az adatbázis legyen összefüggő, kezdődjön a táblázat első sorában, és az A oszlop legyen rendesen feltöltve.
Természetesen, ha az azonosító nem az A oszlopban van, módosítani lehet a kódot.

Előzmény: hemu5 (6839)
szenyor Lopez Creative Commons License 2008.03.04 0 0 6846
Köszi, szerintem teljesen jó lesz így. Külön oszlop lesz egy tartomány, amit rendezni kell -mintegy törzsadat- úgyhogy nem tud bekavarni a többi oszlopba. Majd tesztelem. A paraméterezést meg átvariálom, ha kell. Mégegyszer köszi!
Előzmény: Törölt nick (6845)
Törölt nick Creative Commons License 2008.03.04 0 0 6845
Pl. ezzel:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim Tartomany As Range
Set Tartomany = Range("A:A")
If Not Intersect(Target, Tartomany) Is Nothing Then Target.CurrentRegion.Sort Key1:=Range("A1"), _
Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:=False, _
Orientation:=xlTopToBottom, DataOption1:=xlSortNormal

End Sub

Ezt a makrót a kérdéses munkalap kódlapjára kell betenni. A makró (szinte) mindig lefut, amikor egy (azaz bármely) cella tartalma módosul. Ha a megadott tartomány (A oszlop) és a változó cella metszete nem üres halmaz, (tehát a cella az A oszlopban van,) akkor történik egy sorbarendezés az A oszlop alapján.

De ez csak egy tök általános valami, önmagában csak nagyon korlátozottan használható. Sok nyitott kérdés van amelyek megválaszolásával testre kell szabni.
1) Nyilvánvaló, hogy a Tartomany nevű változót deiniálni kell, én most csak hasból megadtam az A oszlopot.
2) Az is nyilvánvaló, hogy a Sort utasítást megfelelően paraméterezni kell (rendezés alapja, emelkedő v. csökkenő rendezés, stb.)
3) Nem biztos, hogy a CurrentRegion jól találja el, hogy mi az a cellatartomány, amit rendezni akarsz. (Ez ugyanaz, mint amikor egy cellán állva menüből sorbarendezést kérsz, és az excel automatikusan kiegészíti a rendezendő tartományt. Nem mindig úgy, ahogy kellene.)
4) Tegyük fel, hogy a teljes adatbevitel azt jelenti, hogy az A, B, F és G oszlopokba is beírsz értékeket. Ebben az esetben az A oszlopot kell utoljára hagynod, mert ha ott megváltozik egy érték, a sorbarendezés rögtön lejátszódik, és aztán keresheted, hogy melyik sorba került, hogy a hiányzó adatokat is beírd.
5) Egyéb problémák, amelyekre most nem gondolunk.
Előzmény: szenyor Lopez (6844)
szenyor Lopez Creative Commons License 2008.03.04 0 0 6844

Még telepítenem kell a ms query-t, de nemsokára megcsinálom. Ígéretes! Mégha nem is a konkrét feladathoz. Arra gondoltam, hogy ezzel szépen ki lehet szedegetni ismétléseket egy táblázatból. Illetve összesíteni rájuk. De még tesztelni kell:)

Makroval hogyan oldható meg, hogy figyeljen egy tartományt és ha változik, csináljon egy sorbarendezést?

Előzmény: Törölt nick (6843)
Törölt nick Creative Commons License 2008.03.04 0 0 6843
Hát van itt egy érdekes makró nélküli lehetőség, most találtam, de nem tudom, jó lesz-e Neked.

Szóval, tegyük fel, hogy van egy munkafüzeted, abban a Munka1-en egy táblázatod (ez az, amit bővítgetsz). Az oszlopoknak van fejlécük (ez fontos), és munkafüzet el van mentve (tehát a merevlemezen megtalálható).

Megnyitod a mf-et, és kiválasztod a Munka2 lapot.
Menü: Adatok -> Külső adatok importálása -> Új adatbázis lekérdezés
Az Adatforrás kiválasztása ablakban Excel Files*, majd OK gomb.
A Munkafüzet választása ablakban megkeresed ezt a munkafüzetet, amely éppen nyitva van, és amelyben dolgozol.
A Lekérdezés varázsló ablak bal paneljében a Munka1$ melletti kis plusz jellel lenyitod, hogy milyen oszlopok vannak a táblázatban, és egyenként mindegyiket átteszed a Lekérdezés oszlopai panelba. Tovább gomb.
A következő ablakban szűrheted a rekordokat, az azutáni ablakban pedig sorbarendezheted őket a kívánt mező (oszlop) alapján.
A következő ablakban Adatok átadása a MS Office Excel programnak, majd beillesztés a létező munkalap A1 cellájába.
Ezzel létrehozod a Munka1 oldal szűrt, rendezett másolatát.
Jobb gombbal belekattintasz a frissen létrehozott táblázatba, és kiválasztod az Adattartomány tulajdonságait.
Itt pedig bekattintod a Frissítés 1 percenként kapcsolót, és ezzel kapsz egy olyan lekérdezést, amely max 1 perces késéssel követi azt, amit a Munka1-en művelsz. Ha oda új sorokat írsz be, az hamarosan a Munka2-n is megjelenik, még el sem kell menteni hozzá a munkafüzetet.
A lekérdezés celláit aztán felhasználhatod képletek bemenő paramétereként is.

Szóval ez a munkafüzet önmagát használja adatbázisként, és az egyik lapjából készült lekérdezést jeleníti meg a másik lapján! Jó nem? :)
Még nem látom át, hogy mi mindenre lehet ezt használni, de ígéretesnek tűnik :)
Előzmény: szenyor Lopez (6842)
szenyor Lopez Creative Commons License 2008.03.04 0 0 6842
Ha csak az a mód van rá, akkor nem:)
Előzmény: Törölt nick (6841)
Törölt nick Creative Commons License 2008.03.04 0 0 6841
Idegenkedsz még a makróktól?
Előzmény: szenyor Lopez (6840)
szenyor Lopez Creative Commons License 2008.03.04 0 0 6840

Üdv!

Az hogy oldható meg, hogyha van egy listám és a végére beírok valamit (bővítem), akkor amint bekerült egy elem, rendezze sorba automatikusan abc szerint?

hemu5 Creative Commons License 2008.03.04 0 0 6839
Sziasztok
Az lenne a kérdésem,hogyan lehet megoldani azt, hogy külső adat importálásakor, a meglévő cellákat felülírja új adatokkal a nem használt cellákat viszont ne törölje. pl:20000-es adatbázisban esetleg csak 3000 adatnál /sorban/ van változás a változtatott 3000 adatot /sort/tartalmazó adatbázist importálja (felülírja a régit) de a maradék 17000 adat /sor/ ahol nincs változás az törlődik. Vagy esetleg valamilyen módon összefésülni a két adatbázist. Van minden sornak azonosítója.
Törölt nick Creative Commons License 2008.03.03 0 0 6838
"Sokkal vagyok adósod."

Majd Isten megfizeti ;)
Előzmény: Delila_1 (6834)
bejglee Creative Commons License 2008.03.03 0 0 6837
Ok, kipróbálom!
Sajna nem akartam makrót belevonni, de úgy látom nem lesz más megoldás.
Köszi a makrót!
Előzmény: Törölt nick (6836)
Törölt nick Creative Commons License 2008.03.03 0 0 6836
Egy megoldás lehet, ha a munkalap Change eseményét használod fel:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("G:G")) Is Nothing Then
Target.Offset(, 1).FormulaR1C1 = "=IF( RC[-1] <> """", VLOOKUP(RC[-1], xarfolyam, 4, FALSE), """")"
End If
End Sub

Ez azt csinálja, hogy ha a G oszlopban megváltozik egy cellaérték, akkor a változó cella mellé, a H oszlopba beírja a megfelelő képletet. Sajnos a dolog nem valami rugalmas. Amikor egy cellát odébb teszel, amikor egy sort v. oszlopot beszúrzs, illetve törölsz, a cellákban lévő képleteket az Excel frissíti. Ezt a kódot nem fogja frissíteni. Tehát ha egyszer átrendezed a munkalapot, pl. nem a G oszlop változása alapján, és nem a H oszlopba kell tenni a képletet, akkor ez a kód hülyeségeket fog a táblázatodba írkálni.

Szóval csak akkor javaslom a használatát, ha már fix elrendezésű táblázatod van.

A kód testreszabása:

Rögzíts egy makrót, amelyben a megfelelő cellába beírod a megfelelő képletet. Ha pl. a G9 cella módosítása után a H9-ben kell megjelennie a kikeresett árfolyamnak, akkor állj a H9 cellára, és írd be oda a képletet. (A rögzítés itt véget ér.)
Keresd meg a friss makród kódját, és a benne található FormulaR1C1 = ... (valami képlet) részt helyettesítsd be a fenti program vastag betűs részébe.

Előzmény: bejglee (6833)
Delila_1 Creative Commons License 2008.03.03 0 0 6835

Nálam sem, még úgysem, ha átteszem az xarfolyamot az fkeres lapjára.

 

Előzmény: bejglee (6833)
Delila_1 Creative Commons License 2008.03.03 0 0 6834

Nagyon köszönöm, felhasználom.

 

1. Sok dátumot kell bevinni. Egy ciklusban változtatom majd a TextBox nevét az ellenőrzéshez. Hangzatos T1, T2 ... Tsok névre hallgatnak majd a beszédesebb nevek helyett.

2. Átteszem standardra.

 

Sokkal vagyok adósod.

Előzmény: Törölt nick (6832)
bejglee Creative Commons License 2008.03.03 0 0 6833
Kipróbáltam, működik!
De sajnos úgy látszik, hogy csak primitív műveletek esetén :(
(szorzás, osztás, ...)
Nekem ez e képletem:

=HA( G9 <> ""; FKERES(G9; xarfolyam; 4; HAMIS); "")

Na ezt már nem eszi meg.
Hiába írok be a következő "G10"-es cellába értéket, csak les lám vissza üres "szemekkel"
Az xarfolyam cimke, ráadásul egy másik munkalapon van.

Amiket mondtatok, azokat bepipáltam (be is voltak).
Előzmény: Delila_1 (6815)
Törölt nick Creative Commons License 2008.03.03 0 0 6832
"TextBoxnál hogy adhatom meg, hogy a bekért adat éé.hh.nn formátumú legyen?"

Tudtommal sehogy. Azonban lehet a beírt értéket utólagosan ellenőrizni, és hiba esetén megfelelő lépéseket tenni. Az alapelv az, hogy a Textbox objektum OnExit eseményéhez írsz egy kódot, ami a Textboxba írt értéket ellenőrzi, és ha nem jó, akkor a Cancel változót True-ra állítja. Cancel = True esetén az Excel nem engedi, hogy a fókusz elhagyja a Textbox-ot.

Maga az ellenőrző rutin már rajtad múlik, hogy mennyire akarod tökéletesre csinálni. Lehet például regular expressions használatával:

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim RegExpObject As RegExp, ExpMatch As Boolean

Set RegExpObject = New RegExp

With RegExpObject
.Pattern = "^d{2}.d{2}.d{2}$"
.IgnoreCase = True
.Global = True
End With
ExpMatch = RegExpObject.test(TextBox1.Text)
Set RegExpObject = Nothing
If ExpMatch = False Then
MsgBox "éé.hh.nn fomátumot használj"
Cancel = True
End If
End Sub

A fenti program éé.hh.nn formátumot követel meg, de nem ellenőrzi a dátum érvényességét, tehát 99.99.99 is átmegy. Ha ebben gondolkodsz, ajánlom figyelmedbe, amit összehoztunk a 6008-as hsz-tól kedződően, illetve google keresést a "regular expressions" kifejezésre.

Írhatsz egyedi ellenőrzést is, saját logikád alapján.

"Hova írjam azt a szubrutint, amelyiket mindkét űrlapomról el szeretnék érni, avagy mi a szintaktikája az elérésnek második űrlapról, ha az első űrlap kódlapjára írom?"

Szerintem általában nem szerencsés az űrlapok kódját keverni, legalábbis akkor nem, ha egy űrlapot úgy akarsz megtervezni, hogy máskor, másik programban is használható legyen.
De egyébként a válasz ez:

1) Ha standard kód modulra teszel egy Sub-ot, az alapértelmezésben Public Sub, és minden űrlapról meghívható.

2) Ha a Userform1 kódlapjára teszel egy Sub-ot, az alapértelmezésben szintén Public Sub, de más űrlapról, ill. standard kódmodulról úgy kell rá hivatkozni, hogy Userform1.Szubrutinnév
Előzmény: Delila_1 (6830)
Delila_1 Creative Commons License 2008.03.02 0 0 6831

Harmadik kérdésem az űrlappal kapcsolatban:

Hova írjam azt a szubrutint, amelyiket mindkét űrlapomról el szeretnék érni, avagy mi a szintaktikája az elérésnek második űrlapról, ha az első űrlap kódlapjára írom?

Delila_1 Creative Commons License 2008.03.02 0 0 6830

Nagyon köszönöm.

Van egy másik kérdésem is: TextBoxnál hogy adhatom meg, hogy a bekért adat éé.hh.nn formátumú legyen?

Előzmény: Törölt nick (6828)
Törölt nick Creative Commons License 2008.03.02 0 0 6829
Azt hittem, látszani fog, de nem...

Szóval úgy adod meg, hogy pl.
Munka1!A1:A8 a bemenő tartomány -> RowSource
Munka2!A1 a csatolt cella -> ControlSource
Előzmény: Törölt nick (6828)
Törölt nick Creative Commons License 2008.03.02 0 0 6828

Properties ablak, ControlSource és RowSource tulajdonságok.
Előzmény: Delila_1 (6827)
Delila_1 Creative Commons License 2008.03.02 0 0 6827

Valószínűleg igazad van, jpg helyett bmp-be mentettem, ami ebben az esetben 16-szorosa a jpg-nek.

 

Kérdés:

Először csinálok UserFormot. Nem jövök rá, hogy a ComboBoxnak hol kell megadni a bemeneti tartományát, és a csatolás helyét.

 

Kérlek, segítsetek.

Előzmény: Törölt nick (6824)
Törölt nick Creative Commons License 2008.03.01 0 0 6826
A Usedrange kifejezés a cellaformátumot is figyeli.
Ha pl. csak az első két oszlopban van adatod, ugyanakkor az egyébként üres C3 cella betűtípusa félkövér, akkor a UsedRange kifejezés a C oszlopba teszi az utolsó cellát.

Ez jó is lehet, meg nem is, attól függően, hogy mire van szüséged.

A SpecialCells(xlCellTypeLastCell) szvsz használhatatlan, mert nagyon gyakran eltéved. Olyan, intha valami "memória-effektusban" szenvedne, és olyan helyre teszi az utolsó cellát, ahol már rég nincs semmi.

A LC = Cells.Find(What:="*", After:=[A1], SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
egy nagyon ötletes találmány, ennél viszont az lehet a gond, hogy üres munkalap esetén futási hibát generál, amit vagy On Error Goto kifejezéssel kezelni kell, vagy előzőleg ellenőrizni kell valamilyen módon, hogy a munkalap üres-e, és csak akkor szabad ráengedni, ha nem üres.

Egy szó, mint száz: több módszer is van, és mindegyiknek van előnye és hátránya. Neked kell eldöntened, a lehetséges helyzeteket figyelembe véve, hogy melyik a legalkalmasabb az adott esetben.
Előzmény: Gavriel (6823)
Törölt nick Creative Commons License 2008.03.01 0 0 6825
"Álladóan 1 -et ad vissza."

oszlop=Cells(1, Columns.Count).End(xlToLeft).Column

a)
Cells(1, Columns.Count) -> az első sor és a legutolsó oszlop metszőpontjában lévő cella.
b)
.End(xlToLeft) -> a pont előtti kifejezéssel megadott (esetünkben az a) alatt meghatározott) cellához képest egy ctrl + ← kombinációval utánozható ugrás.
c)
.Column
a pont előtti kifejezéssel megadott cella oszlopának száma.

Ez a kifejezés akkor ad 1-et eredményül, ha az első sorban
1) egyáltalán nincs érték
2) csak az utolsó oszlopában (IV1 cella) van érték
3) csak az első oszlopában (A1 cella) van érték.

A kifejezés egy adott sor utolsó eleme oszlopszámának meghatározására való. Mint ahogy az utolsó sor meghatározására használt
sor=Range("A" & Rows.Count).End(xlUp).Row
képlet is csak az A oszlopra vonatkozik. Ha más oszlopra keresel, a képletet módosítani kell.
Előzmény: Gavriel (6820)
Törölt nick Creative Commons License 2008.03.01 0 0 6824
"Nem sikerült feltöltenem a képet. Mi a módja?"

Egyetlen dolog jutott eszembe, ami miatt a kísérleted meghiúsulhat: ha túl nagy a fájlméret. (Bár, ha ez a probléma, a fórumszoftver megmondja.)
Én a screenshot-ról mindig levágom a fölösleges részt, a maradékot pedig jpg formátumban mentem el, és nem szokott gondom lenni a feltöltéssel.
Előzmény: Delila_1 (6821)
THT Creative Commons License 2008.03.01 0 0 6822

Köszi szépen a segítséget, pompásan működik (1, 1)-el :)

 

Jó ez a topic, sokat lehet belőle tanulni.

Előzmény: Delila_1 (6787)
Delila_1 Creative Commons License 2008.03.01 0 0 6821

Régebbi verzióban "Listák kiegészítése formátummal és képlettel".

 

Nem sikerült feltöltenem a képet. Mi a módja?

Előzmény: Törölt nick (6819)
Törölt nick Creative Commons License 2008.02.29 0 0 6819
Szerintem erre gondoltál...



4-5 sor után automatikusan kiegészít.
Ha olyan adatot írsz be az A oszlopba, amelyre a képlet nem értelmezhető, (pl. szám helyett betűt,) akkor leáll a kiegészítés. Ha kitörlöd a betűt, aztán - ezúttal helyesen - számot írsz a cellába, akkor újraindul.
Előzmény: Delila_1 (6813)
Törölt nick Creative Commons License 2008.02.29 0 0 6818
oszlop=Cells(1, Columns.Count).End(xlToLeft).Column
Előzmény: Gavriel (6817)
Törölt nick Creative Commons License 2008.02.29 0 0 6816
"Másik módszer (a sok közül) az alsó sor kikeresésére
sor=range("A65536").end(xlUp).Row
Ez az A oszlopban található utolsó sor sorszáma."


A
sor=Range("A" & Rows.Count).End(xlUp).Row
pedig akkor is működik, ha a táblázat sorainak maximális száma nem 65536 (mint pl. Excel 2007-ben)
Előzmény: Delila_1 (6807)
Delila_1 Creative Commons License 2008.02.29 0 0 6815

Megint nem ott jár az eszem, ahol kellene. A Számolás lapon a "Képletekben címkék is használhatók" jelölőre gondoltam, nem a Külső...stb-re.

Most kipróbáltam, akkor is működik, ha nincs bejelölve a Képletek... stb.

Előzmény: Delila_1 (6813)
Delila_1 Creative Commons License 2008.02.29 0 0 6814

A Jimmy the Hand részletes leírásához az enyém egy pici adalék volt.

Szerintem a makróid vesztét az okozta, hogy nem mentetted le a füzetet.

Előzmény: wawabagus (6811)
Delila_1 Creative Commons License 2008.02.29 0 0 6813

Az Eszközök/Beállítások Számolás lapján jelöld be a Külső hivatkozásokat felfrissít jelölő négyzetet. Ez elméletileg, ha már legalább 5 képlet volt fölötte, amint megkapja a hatodikhoz az értékeket, beírja a 6. képletet.

 

Példa (mert érzem, hogy sántít a leírásom):

A1:A5 tartományban számok vannak, B1:B5-ig képlet, ami az A oszlop adatával számol, mondjuk =A1*2. Ha A6-ba adsz adatot, a B6 lemásolja a fölötte lévő képletet.

 

Nem mindig jön össze, még nem tudtam rájönni, miért.

Előzmény: bejglee (6812)
bejglee Creative Commons License 2008.02.29 0 0 6812
Sziasztok!

Egy folyamatosan bővülő táblázatot szeretnék készíteni.
Végül is egy nyitó-záró egyenleg nyilvántartó kis táblázatot.
Mondjuk, az A oszlopba felviszek egy értéket, és a Boszlopban elvégzek vele valamilyen műveletet.
Hogyan tudom a B oszlopban lévő képletet érvényesíteni, az egész B oszlopra?
Szóval, ha új sort kezd a felhasználó, akkor ne azzal keljen kezdenie a bevitelt, hogy az előző sort lemásolja, hanem automatikusan kiértékelődjön a B oszlop adott sora?

Azt próbáltam, hogy kijelöltem a B oszlopot és a képletet bemásoltam, de akkor egy 10 MB-os üres fájlom keletkezett alapból. Ráadásul nem valami elegáns megoldás, mert egyből 65535 sora lett :(

Üdv,
Bejglee
wawabagus Creative Commons License 2008.02.29 0 0 6811
Köszönöm a segítséget!!!
Előzmény: Delila_1 (6804)
wawabagus Creative Commons License 2008.02.29 0 0 6809

:-)

Hát nem mondom, hogy minden világos abból, amit írtál :-), de azért néhány dolgot megértettem. Azt hiszem kell majd egy kis időt szánnom a kielemzésére :-).

Nagyon köszönöm, hogy ilyen sok energiát szántál a problémámra :-)!!!

Ezer köszönet érte!!

Y

 

Előzmény: Törölt nick (6802)
Delila_1 Creative Commons License 2008.02.29 0 0 6808

Az előzőhöz:

"Lyukas" oszlopokra is igaz.

Előzmény: Delila_1 (6807)
Delila_1 Creative Commons License 2008.02.29 0 0 6807

Másik módszer (a sok közül) az alsó sor kikeresésére

 

sor=range("A65536").end(xlUp).Row

 

Ez az A oszlopban található utolsó sor sorszáma.

Előzmény: Gavriel (6800)
Delila_1 Creative Commons License 2008.02.29 0 0 6806
...és nekem miért nem?!
Előzmény: Törölt nick (6797)
Delila_1 Creative Commons License 2008.02.29 0 0 6804

...ha lefuttattam egy macrot és csak teszteltem, akkor nekem nem kötelező elmentenem a dokumentumot és a macro megmarad, igaz? Vagy, ha ilyenkor nem mentem el a dolumentumot, akkor a "lefuttatott" macro is elveszik?

 

Ha a rögzítéskor a makró helyének az "Ebben a munkafüzetben"-t választod, csak akkor marad meg, ha ezt a füzetet elmented.

 

Ha az "Egyéni makró-füzetben"-re esik a választásod, akkor a personal.xls nevűbe menti el (ezt önállóan végzi az Excel, nem kell külön mondani neki), és akkor bármelyik füzetedben alkalmazhatod. Általános érvényű makrókat érdemes ide tenni, amiket csak egy-egy füzetben használsz majd, azt a saját füzetébe mentsd.

 

Nekem pl. a personalban ilyenek vannak:

A kijelölt területre véletlenszámot ír be

A cellák méreteit mm-ben adhatom meg

Kiírja a kijelölt cella háttérszín-kódját, a font színének kódját, stb.

Előzmény: wawabagus (6798)
Delila_1 Creative Commons License 2008.02.29 0 0 6803
Érdemes még beállítani az automatikus mentést x percre – "Csak az aktív munkafüzetet" és "Mentés előtt rákérdez" paraméterekkel –, mert munka közben könnyű elveszíteni az időérzékünket, és megfeledkezünk a Ctrl+S-ről.
Előzmény: Gavriel (6801)
Törölt nick Creative Commons License 2008.02.29 0 0 6802
Azt hiszem, tisztáznunk kellene néhány alapfogalmat. Segítségül mellékelek egy képet.



Zölddel bekarikáztam a Project Explorer nevű ablakot. (Ha nincs ilyened, akkor Menü -> View -> Project Explorer.) Ebben megtalálod az összes megnyitott munkafüzetet. A munkafüzeteken belül az alábbi objektumcsoportok lehetnek:
1) Microsoft Excel Objects -> lényegében az Excel munkalapok
2) Forms -> űrlapok
3) Modules -> standard kódmodulok
4) Class Modules -> osztálymodulok

Az objektumok közül a normál Excel ablakban csak az Excel munkalapokat látod. A többiek csak a Visual Basic Editor ablakban, a Project Explorerben láthatók.

Mindegyik objektumcsoportban több adott típusú objektum lehet, tehát több munkalap, több űrlap, stb

A fenti objektumok mindegyike (tehát minden munkalap, űrlap, standard kódmodul és osztálymodul) rendelkezik egy olyan lappal, amelyre programkódot lehet írni. Ha az objektumokat füzetlapokhoz hasonlítjuk, akkor az Excel munkalap egy olyan füzetlap, amelynek az elülső oldalán táblázat van, a hátsó oldalára viszont kódot ír(hat)unk. Hasonlóképpen, az űrlap olyan füzetlap, amelynek az elülső oldalán az űrlap maga, a hátsó oldalára pedig kódot írhatunk. A standard kódmodul olyan füzetlap, amelynek csak egy odala van, és erre kizárólag programkód kerülhet. (Az osztálymodul egy speciális fajtája a standard modulnak, de erre most nem térnék ki. Hosszú lenne.)

A Projekt Explorerben egy objektum nevére duplán kattintva a jobb oldalon (a pirossal karikázott részben) megnyílik az objektumhoz tartozó kódlap, ahol a különféle írt vagy makróként rögzített programok találhatók.

Makróprogramozás szempontjából a standard kódmodulok a legalapvetőbbek a 4 típus közül (lásd kék karika az ábrán). Amikor a munkafüzetben rögzítesz egy makrót, az Excel automatikusan létrehoz egy standard kódmodult (vagy felhasznál egy már meglévőt), és arra pakolja a rögzítéssel párhuzamosan a kódsorokat. Természetesen manuálisan is írhatsz itt programot, a makrórögzítő segítsége nélkül.

A munkalap és az űrlap kódmodulja annyiban speciális, hogy oda a munkalap ill. űrlap ún. eseményeihez köthető kódokat kell tenni. Pl. ha az űrlapon van egy gomb, annak van egy "kattintásra" nevű eseménye. Amikor a felhasználó az űrlapon lévő gombra kattint, az Excel megnézi, hogy az űrlap kódlapján (tehát a füzetlap hátoldalán) létezik-e ehhez az eseményhez tartozó programrész, és ha van, azt lefuttatja.

A kód (általában) szubrutinokból és függvényekből áll. A szubrutin határai
Sub szubrutin_neve
...
End Sub

A függvény határai:
Function függvény_neve
...
End Function

Egy kódlapon belül több szubrutin és/vagy függvény is lehet, (lásd az ábra pirossal karikázott részét,) de olyan nincs, hogy egy szubrutinon belül lenne másik is:
Sub szubrutin1
...
Sub szubrutin2
...
End Sub
...
End Sub

Tehát a szubrutinok egymásba ágyazása ilyen formában nem lehetséges.

Namost, a "makró" szó jelentése nem egyértelmű. Tágabb értelemben minden szubrutin makró, szűkebb értelemben csak azok, amelyeket a makrórögzítővel hoztál létre.

A makrórögzítéssel kapcsolatban egy jótanács: rögzítés közben nem ajánlott a Visual Basic Editorban mászkálni, mert ha az Editorban a kurzor helye megváltozik, előfordulhat, hogy a makró további lépéseihez tartozó kód a megváltozott kurzorpozícióba íródik. Így valóban megtörténhet, hogy egy már meglévő makróba új programsorok kerülnek. (Ezt nem tudom pontosan, hogy hogyan működik. Többször láttam már ilyet, de nem sikerül megbízhatóan reprodukálni.)

A munkafüzet elmentésekor mentésre kerül annak összes objektuma, tehát minden munkalap, űrlap, a "hátoldalukon" található kódlapokkal együtt, továbbá minden kódmodul és osztálymodul mentődik. Minden kódrészek, amely ezen obejktumok kódlapjain lakik, mentésre kerül, és elvileg nem veszhet el, csak szándékos törlés esetén. (Illetve lásd még korábbi hsz-omat a verzió- és formátum-konfliktusokkal kapscolatban.)

Az Excelben lehetőség van arra is, hogy egy kódmodul tartalmát programból módosítsuk. Más szóval új kódsorokat, akár egész szubrutinokat lehet munkafüzetekhez adni, illetve törölni is lehet őket. Ilyen programot makrórögzítővel nem lehet készíteni, kézzel megírni sem annyira egyszerű. Ha ilyet írtál volna, arról biztosan tudnál. Tudtod nélkül pedig legfeljebb valami makróvírus csinálhat ilyesmit. Ha biztos vagy abban, hogy egy adott munkafüzet adott kódmodulján ott volt egy makró, és most nincs ott, és nem tudsz rá semmi más magyarázatot, esetleg érdemes egy alapos víruskeresést végezni.

Remélem, a többiek segítségével együtt ezzel kicsit világosabbá válik számodra a kép.
Előzmény: wawabagus (6798)
wawabagus Creative Commons License 2008.02.29 0 0 6798

Igen, már elkezdtem elmentegetni őket TXT-be okulva hülyeségemből.

 

Elmondom, hogy mi az én naiv képem a macro működésével kapcsolatban.  

 

Felveszem a macrot (tehát az összes átalakítást), elmentem egy önálló munkafüzetbe. Elmentem miután "felvettem a lépéseket". Minden szuper eddig.

 

Én ez alatt az önálló munkafüzet alatt azt értem, hogy lényegében mintha egy kis txt documentumban elmenteném a "parancssorokat".

 

Ha csinálok egy új macrot más néven és szintén elmentem, akkor az egy másik kis TXT documentum fájlban lesz.

 

Szóval én a macrot úgy képzelem, mint egy rögzített parancssort, amit "lefuttatok" egy akármilyen excelen.

 

Tehát pl, ha lefuttattam egy macrot és csak teszteltem, akkor nekem nem kötelező elmentenem a dokumentumot és a macro megmarad, igaz? Vagy, ha ilyenkor nem mentem el a dolumentumot, akkor a "lefuttatott" macro is elveszik?

 

Most lehet, hogy totál hülyeségeket kérdezek a saját logikám szerint...nem tudom mennyi érthető a kérdésem.

 

Ami számomra még furcsa, hogy Visual Basicben nézegettem egy-két macrot és azt vettem észre, hogy egy macron belül mintha két macromat is elmentette volna. Ez lehetséges? Lehet, hoyg egy másik macro mögé elment egy másikat?

 

Na, legyünk optimisták valamikor majdcsak átlátom hogy is működik ez az egész...

 

Előzmény: Törölt nick (6795)
Törölt nick Creative Commons License 2008.02.29 0 0 6797
A2-vel viszont működik, nekem legalábbis.
Előzmény: Delila_1 (6796)
Delila_1 Creative Commons License 2008.02.29 0 0 6796
Igazad van, elírás volt a B2.
Előzmény: Törölt nick (6790)
Törölt nick Creative Commons License 2008.02.29 0 0 6795
"Miért tűnik el egy XY nevű macro, mikor én ZX-en dolgoztam?"

Nem tudom. Furcsa.

Figyelni kell rá, hogy melyik munkafüzetbe vannak rögzítve, tudod, meg szokta kérdezni az excel, hogy melyikbe tegye. Meg arra is figyelni kell, hogy az a munkafüzet bezárás előtt el legyen mentve.

Ha speciel a Te makróid valami érthetetlen okból ilyen öngyilkos hajlamúak, szerintem készíts róluk biztonsági másolatot. A kód csak szöveg, simán letárolható egy .TXT fájlban. (Egy szövegfájlban akárhány makró elfér, de lehet, hogy érdemes valahogy csoportosítani őket.)
Ez ugyan nem akadályozza meg, hogy a makrók eltűnjenek, de könnyebb újra elővenni őket.


Ja, még valami: a verzió- és formátum-konfliktusok.
Nem mindegy, hogy a mentés formátuma micsoda. Tudod, egy táblázatot lehet menteni Microsoft Excel dokumentumk, Excel 5.0/95 dokumentum, .csv , stb. formátumban. Van ezek között olyan, amely makrók tárolására nem alkalmas. Pl. ha csv-ként mented, akkor búcsút mondhatsz a makróknak. A 95-ös verzióban (ha jól emlékszem) az osztálymodulok, meg talán az űrlapok nincsenek támogatva. Az is lehet, hogy ha (egy másik gépen) 95-ös Excelben nyitod meg a munkafüzetet, akkor a 2003-as Excelben felvett makrókat nem tölti be, s amikor újra elmented, elvesznek.
Javaslom, figyelj rá, hogy mindig a kurrens Excel verziónak megfelelő formátumban mentsd a táblázataidat.
Előzmény: wawabagus (6793)
wawabagus Creative Commons License 2008.02.29 0 0 6794

Elfelejtettem hozzántenni, hogy nyilvánvalóan én vagyok a totál hülye, csak nem tudom melyik ponton csinálom a hülyeséget...

Valamit nyílván nagyon nem értek a macro működésben...

Mert ez az egész már x-edszer történik meg velem. Macrok, amit már megvannak 5 hete és használtam is őket egyszercsak felszívódnak.

 

Előzmény: wawabagus (6793)
wawabagus Creative Commons License 2008.02.29 0 0 6793

Értem. Köszi az infót. Megmondom őszintén teljesen hülyét kapot a macro készítsétől.

Minden úgy tűnik, hogy tök szuper, meg segíteni fogja a munkámat. Segíti is jóideig...

Aztán teljesen hülyét kapok, mikor észreveszem, hogy pár macrom megsemmisítette magát és ráadásul nem is olyan macro, amin manipulálgattam...

Megőrülök, mikor századszorra kell újra "felvennem" ugyanazt a macrot.

De még ezt sem bánnám, ha legalább érteném hogy miért tűntek el.

De nem értem és ezen a pontom mindig kiábránulok a macro készítésből...

Ez történt most is.

Miért tűnik el egy XY nevű macro, mikor én ZX-en dolgoztam?

Megőrülök ettől..........

HMMMMMMMMMMMMMMMMMMMMMMMMM

Előzmény: Törölt nick (6792)
Törölt nick Creative Commons License 2008.02.29 0 0 6792
A Select utasítás kijelölést jelent. Az, amikor az egérgombot vagy a ctrl gombot nyomva tartva kijelölsz egy cellatartományt, oszlopokat, munkalapokat, stb.

Általában a makrórögzítő úgy dolgozik, hogy kijelöl egy tartományt, aztán a kijelölésen hajtja végre a műveletet. Pl:

Range("A1:A3").Select
Selection.ClearContents

Ez teljesen logikus és jogos, hiszen a felhasználó is kijelöli a tartományt, és aztán hajt végre rajta műveletet. De a Select ezekben az esetekben nem szükséges, általában kihagyható, és a két sor összevonható így:

Range("A1:A3").ClearContents

Szvsz a Select haszna akkor van, amikor teszteled a programodat, és gyorsan meg akarod tudni, hogy egy futási hibát eredményező művelet melyik cellán történt. Vagy ha futtatás közben akarsz egy megnyugtató visszajelzést arról, hogy történik valami.
Egyéb esetben a Select csak lassítja a makró futását.

Előzmény: wawabagus (6791)
wawabagus Creative Commons License 2008.02.29 0 0 6791

Köszi :-)!

Mindjárt ki is próbálom.

Hát igen, pont nézegettem és próbáltam kitalálni mi mit jelenthet a macro-ban és arra jöttem rá, hogy tele van hulladékkal...scrollolgatásokkap pl :-)...

Csak most tanulgatom :-)...

Töröltem is ezeket a sorokat és most fogom kipróbálni működik-e úgy...

Nagyon köszönöm a segítséget!!!!!!!!!!!!!!!

Y.

Előzmény: Törölt nick (6789)
Törölt nick Creative Commons License 2008.02.29 0 0 6790
"B2-be útvonallal és kiterjesztéssel beírtam a fájl nevét"

A2-be mit írtál?

(nev$ = Cells(2, 1) -> A2-re hivatkozik.)
Előzmény: Delila_1 (6787)
Törölt nick Creative Commons License 2008.02.29 0 0 6789
Selection.AutoFill Destination:=Range("U3:U1514")

helyett

Selection.AutoFill Destination:=Range("U3", Range("U3").End(xlDown))

Ez akkor működik, ha az U oszlop folyamatosan fel van töltve, tehát nincsenek közben üres cellák.

Valószínűleg a
Range("U3:U1514").Select
sor felesleges, de szükség esetén (vagy biztos, ami biztos alapon) helyettesíthető ezzel:
Range("U3", Range("U3").End(xlDown)).Select

Előzmény: wawabagus (6788)
wawabagus Creative Commons License 2008.02.29 0 0 6788

Sziasztok!

Kéne egy kis segítség...

A macro-ban szeretném kijavítani, hogy valamit ne csak pl. U1 től U1500-ig csináljon, hanem az utolsó nem üres celláig...(mert, hogy hol fejeződik be az oszlopom az minden hónapban változni fog) 

Hogyan lehet ezt neki megmondani?

Azt hiszem ezekben a sorokban kellene valamit megmanupulálni...

Remélem érti valaki, amit itt leírni próbáltam...:-)

Köszi a segítséget!

Y

 

Selection.AutoFill Destination:=Range("U3:U1514")
    Range("U3:U1514").Select

Delila_1 Creative Commons License 2008.02.29 0 0 6787

Az első kérdésedre

 

Cells(1, 1) = ActiveSheet.Name

A másodikra az alábbit próbáltam (B2-be útvonallal és kiterjesztéssel beírtam a fájl nevét), de nem tetszett neki a csv kiterjesztés.

 

nev$ = Cells(2, 1)
ActiveWorkbook.SaveAs Filename:=nev, FileFormat:=xlcsv, _

Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False

Valaki biztosan tud jobbat, működőt.

Előzmény: THT (6784)
Törölt nick Creative Commons License 2008.02.28 0 0 6786
Innen letöltöttem ingyen pár dolgot:

http://simplythebest.net/sounds/WAV/sound_effects_WAV/index.html

Előzmény: Gavriel (6785)
THT Creative Commons License 2008.02.28 0 0 6784

Üdv!

 

Volna egy problémám, remélem tudtok segíteni, megpróbálom érthetően leírni.

van egy file, aminek a neve pl.: M21_1.CSV

 

Ha ezt megnyitom excellel, akkor ugye a SHEET neve nem SHEET1, lesz, hanem M21_1.

 

Futtatok rajta egy makrot, ami rendezget egy kicsit.  Amit nem tudok megoldani, hogy a Sheet neve, tehát az M21_1 valahogy megjelenjen cellatartalomként, tehát tudjak vele dolgozni.

Másik, hogy a makro utolsó lépésként mentse le a sheet-et .CSV-be, úgy, hogy a file neve, az A1 cella tartalma legyen, és nem kérdezgessen rá hogy komolyan gondolom e....  

a Sheet neve, és az A1 tartalma természetesen változó, mindíg az éppen megnyitott file-tól füg, végtelen a variációk száma.     nnnnna  :)

 

Segítséget előre is nagyon köszönöm! 

Törölt nick Creative Commons License 2008.02.28 0 0 6783
Keress a neten is.

Például itt.
Előzmény: Gavriel (6782)
Törölt nick Creative Commons License 2008.02.28 0 0 6780
A neten több helyen is azt mondják, hogy Excel95 óta nem támogatott a hangok lejátszása közvetlenül Excel VBA-ból. Helyette kerülő megoldásként ajánlják, hogy hangfájlban rögzítsd, amit hallani akarsz, és azokat játszasd le.
Bár írtad, hogy nem erre van szükséged, azért egy link:

http://www.mrexcel.com/archive2/6200/6881.htm
Előzmény: Gavriel (6777)
Törölt nick Creative Commons License 2008.02.28 0 0 6778
Én erre gondoltam:

Sub Proba()
Beep
End Sub
Előzmény: Gavriel (6777)
Törölt nick Creative Commons License 2008.02.28 0 0 6776
Szerintem semmi nem kell hozzá, és ez nem is Excel kérdés, hanem op. rendszeri.
Ha van hangkártya a gépben, akkor a Windows oda küldi a hangot, ha nincs, akkor a kicsi hangszótróra. (Legalábbis a nálam a Beep nevű VBA uatsítás így működik.)

Ha nem hallod a beep-et, ami korábban jól szólt, akkor alighanem a hangkártyád körül kell keresni az okot. Hibás hardver, vagy rossz driver, ilyesmi. Vagy talán csak kicsit feljebb kellene tekerni a hangerőt (a kicsi hangszóró sokkal élesebb, hangosabb beep-et nyom, mint a hangkártya a sztereó hangfalon).
Előzmény: Gavriel (6774)
Törölt nick Creative Commons License 2008.02.28 0 0 6773
Nincs mit, ezért vagyok itt ;)
Előzmény: Delila_1 (6772)
Delila_1 Creative Commons License 2008.02.28 0 0 6772

Nagyon köszönöm, mindig Te segítesz ki.

 

Előzmény: Törölt nick (6770)
sanyosz75 Creative Commons License 2008.02.28 0 0 6771
Köszönöm szépen!
Előzmény: Jozsef (6768)
Törölt nick Creative Commons License 2008.02.28 0 0 6770
Feltétlenül a HIPERHIVATKOZÁS függvénnyel akarod csinálni?

VBA (nem teszteltem, csak átírtam egy makrórögzítést a példád alapján):

utv = "E:\JpgAnimals"
kep_1 = utv & Cells(7, 6).Value & ".jpg"
Cells(18, 6).Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= kep_1, _
TextToDisplay:= kep_1

Előzmény: Delila669 (6769)
Delila669 Creative Commons License 2008.02.28 0 0 6769
Helló Mindenkinek!

A hiperhivatkozással gyűlt meg a bajom.

utv = "E:JpgAnimals"
kep_1 = utv & Cells(7, 6).Value & ".jpg"
Cells(18, 6).Select
Selection.Formula = "=HIPERHIVATKOZÁS(""" & kep_1 & """)"

Ez beírja a függvényt a cellába, de csak akkor aktiválható, ha előbb a szerkesztőlécen (nem a cellában) elfogadtatom.
20 képet kell hasonló módon csatolnom. Tud valaki olyan módszert, amivel nem kell külön elfogadtatni?
Jozsef Creative Commons License 2008.02.27 0 0 6768
Az INDIREKT függvénnyel
pl.
=INDIREKT("Sheet" & A5 & "!B10")

ahol A5-ben van a kiválasztott betű
Előzmény: sanyosz75 (6767)
sanyosz75 Creative Commons License 2008.02.27 0 0 6767

Sziasztok!

 

A következő kérdésem lenne, hátha van rá megoldás. Hogyan lehet egy workbook-on belül a sheet-ekre (a nevükre) függvénnyel hivatkozni.

 

Pl. van egy összesítő oldalam, ahova a többi oldalról (pl. SheetA, SheetB ... SheetE) szeretnék hivatkozni. Mondjuk az A, B ... E betűk országok rövidítését jelentik, amit az összesítő oldalon egy legördülő listából kiválasztok. 

 

Az összesítő oldalon kiválasztva D országot SheetD!B10 mező értéke kellene. Ez egyszerűen megvan, de hogyan lehet a hivatkozást megbuherálni, hogy ha E országot választom, akkor az összesítő oldal ugyanazon cellájában - a hivatkozás átírása nélkül - SheetD!B10 helyett automatikusan SheetE!B10 értékét hozza be.

 

Előre is köszönöm. Üdv,

Sanyi

Delila669 Creative Commons License 2008.02.27 0 0 6766
Szívesen.
Előzmény: wawabagus (6765)
wawabagus Creative Commons License 2008.02.27 0 0 6765

Nagyon köszönöm a segítséget :-)!!!!

Legyen szép napod!

Y

Előzmény: Delila669 (6764)
Delila669 Creative Commons License 2008.02.27 0 0 6764

Egyszerű ellenőrizni. Nyitottam egy új füzetet, két lapjára képleteket vittem fel.

Az F9 mindkettőt frissítette.

Javaslom, hogy a "képletes" lapodat helyezd át egy új füzetbe (lapfülön jobb kattintás), frissítsd, majd helyezd vissza.

Előzmény: wawabagus (6763)
wawabagus Creative Commons License 2008.02.26 0 0 6763

Szia!

Most próbálgatnám ezt az F9-es grafikon frissítést de eszembe jutott, hogy megkérdezzem...F9-el minden fog frissülni? Úgy érteve, hogy az összes létező grafikon stb, ami egy dokumentumom belül van, vagy csak egy munkalapon belül? 

Az előbbi lehet, hogy elég rizikós lenne nekem :-)...végig kell gondoljam.

Köszi a segítséget!

Y

Előzmény: Delila669 (6755)
Alternatíva Creative Commons License 2008.02.25 0 0 6762
Na, ez tök jó.
Kiderült persze, hogy nem pontos a két lista, de a selejtet már kézzel ki tudtam szedni.
Kösz szépen a segítséget mindkettőtöknek!
Előzmény: Delila669 (6759)
Delila669 Creative Commons License 2008.02.25 0 0 6761
Próbáld meg az én megoldásomban zöldíteni a 0 értékűeket, ezt már rendezheted, másolhatod.
Előzmény: Alternatíva (6760)
Alternatíva Creative Commons License 2008.02.25 0 0 6760
Huh, nagyon kösz, ez tök jópofa megoldás.
Nem írtam, de nekem további dolgom is lenne a megtalált 400 településsel, szóval valami olyan megoldásra lenne szükségem, amivel ki tudom szedni a hosszabb listában nem szereplő települések nevét.
Olyan is jó, amivel valahogy sorbarendezhetem, és a lista elejáre/végére került 400 települést kikopizhatom, de olyan is, amelyik mondjuk külön lapra, vagy oszlopba kilistázza azt a 400 települést.

Ilyen ötletetek nincs?

Ez a zöldháttér egyébként ötletes, tetszett (csak sajnos kimenteni nem tudom a fehéren maradó településneveket)
Előzmény: Törölt nick (6758)
Delila669 Creative Commons License 2008.02.25 0 0 6759

Az előző feladat másik megoldása:

Szintén vegyük úgy, hogy A és B oszlopban vannak a felsorolások.

 

C1–> =DARABTELI(B:B;A1)

D1–> =DARABTELI(A:A;B1)

Ezeket kell lemásolni.

 

Itt is lehet színezni a feltételes formázással, csak ennél a cella értéke egyenlő 0 értékűeket.

Előzmény: Alternatíva (6757)
Törölt nick Creative Commons License 2008.02.25 0 0 6758
Tegyük fel, hogy az A és a B oszlopban vannak a helységnevek.
Az A1 cellának csinálj feltételes formázást:
- jelöld ki az A1 cellát
- Menüből válaszd ki a Formátum -> Feltételes formázás opciót, és írd be a
=HOL.VAN(A1;B:B;0)>0
képletet, ahogy a mellékelt ábra mutatja, és adj meg valami formátumot (esetemben zöld háttérszín a formátum).


Ezután másold az A1 cella tartalmát (ctrl+c), jelöld ki az A oszlopot, és menüből válaszd a Szerkesztés -> Irányított beillesztés -> Formátum opciót.

Elvileg így a feltételes formázás zöldre festi az A oszlop azon celláit, amelyeknek a tartalma a B oszlopban is szerepel, és fehéren hagyja azokat, amelyek nem szerepelnek a B oszlopban.

Természetesen, a helyes működéshez pontos egyezés szükséges. Tehát pl. Körösladány és Körösladáyn különböző értékek, még akkor is, ha csak elírás miatt különböznek, és én tudom hogy ezek ugyanazt a helységet takarják.

A helyedben megcsinálnám ugyanezt az eljárást a B oszlopra is, hacsak nem vagy biztos benne, hogy a B oszlop minden eleme megtalálható az A oszlopban.
Előzmény: Alternatíva (6757)
Alternatíva Creative Commons License 2008.02.25 0 0 6757
Sziasztok!

Van két településeket tartalmazó listám (egy-egy oszlop). Az egyikben 3200, a másikban 2800 telekpülés neve van. Arra lennék kiváncsi, hogy melyik 400 hiányzik.
Excelben meg lehet ezt oldani? Vagy ehhez már Access kell?

Ha van megoldás, mi az?

Előre is kösz, ha segítetek
wawabagus Creative Commons License 2008.02.25 0 0 6756

Oh, KÖSZI SZÉPEN A TIPPET!!!

Kipróbálom...

y.

Előzmény: Delila669 (6755)
Delila669 Creative Commons License 2008.02.21 0 0 6755
Az Eszközök/Beállítások/Számolás lapon válaszd az automatikust. A "Csak kérésre" beállításnál F9 hatására frissít.
Előzmény: wawabagus (6754)
wawabagus Creative Commons License 2008.02.21 0 0 6754

Sziasztok!

Kéne egy kis segítség...

Azt szeretném megkérdezni, hogy ha én készítettem egy grafikont, majd utólag belekontárkodtam a grafikonba (pl...átírtam a számot stb.), hogy lehet frissíteni az adatokat, hogy megint az a szám legyen a grafikonon, ami a táblázatban is?

Megadtam neki egy forrást és nem azt mutatja, nem tudom miért, pedig nekem úgy tűnik minden jól van beírva...a régi számot mutatja...

Tud valaki segíteni?

Ezere köszönet előre is!!!

Y.

Delila669 Creative Commons License 2008.02.18 0 0 6753
Nagyon szívesen. Ez apróság.
Előzmény: Törölt nick (6752)
Törölt nick Creative Commons License 2008.02.18 0 0 6752
Én is köszönöm ;)
Előzmény: Delila669 (6750)
-Magnat- Creative Commons License 2008.02.18 0 0 6751

Áh, nagyon szépen köszönöm :)

Előzmény: Delila669 (6750)
Delila669 Creative Commons License 2008.02.18 0 0 6750

G14:G17-ig kell kijelölnöd a cellákat, mert ezek elé akarsz üreseket beszúrni.

Ctrl és + jel, Cellákat jobbra tolja jelölő. Az alsó tartományt nem változtatja.

Előzmény: -Magnat- (6749)
-Magnat- Creative Commons License 2008.02.18 0 0 6749

Köszi..de most a beszúrást nem értem. 

Csináltam egy kis skiccet:  íme:

 

 

    Felső ábrán a Felső sorban megcsináltam az oda irányt, reggeltől estig. Az alsó sorban a vissza irány látható.   Namost az ALSÓ ÁBRÁN
pl: egy új járat berakásakor ha beszúrok egy oszlopot akkor az alsó visszafelé jövő időadatában is megjelenik az üres oszlop, ami nem kéne oda, mert így hézagos lesz.

 

Nem lehet úgy beadni neki, hogy külön kezelje a felső és az alsó részt?  tehát ha kérek egy oszlopot nem tudodm valahogy meghatározni hogy Ettől a sortól addig a sorig kell egy plusz oszlopot.

Előzmény: Delila669 (6748)
Delila669 Creative Commons License 2008.02.18 0 0 6748

Ha pl. a C2:C6 cellák elé akarsz beszúrni cellákat, kijelölöd ezt a területet, Ctrl és + jelre előjön egy gyorsmenü, ahol megadod, hogy jobbra tolja a kijelölt részt. Néhány cella megszüntetésére a Ctrl és mínusz jel szolgál.

 

Másik módszer: kijelölöd a tartományt, jobb klikk, és vagy a beszúrást, vagy a törlést választod a gyorsmenüből. Ugyanaz a párbeszéd panel jön elő, mint az előző módszerrel. 

 

A2:A6-ban vannak a megállók, B2:B6-ig az indulási idők, C2:C6-ig a menetidők.

B3–> =$B$2+C3

Ezt kell lemásolni. A B és C oszlopok formátuma óó:pp legyen.

Előzmény: -Magnat- (6747)
-Magnat- Creative Commons License 2008.02.18 0 0 6747

Sziasztok!

 

Egy Excelles kérdésben kérem segítségeteket.

csinálok egy menetrend-szerű táblázatot.

 

felül az oda irány, időadatokkal, csatlakozással, alul a vissza irány (egy lapon)

Pl:

Moszkva tér

Batthyány tér

Kossuth tér

Deák tér

 

---------------------------------------------  - itt kéne szétválasztani őket

 

Deák tér

kossuth tér

Batthyány tér

Moszkva tér

 

 

 

Namost a két irány között hogy lehet megoldani azt hogy ne egységes hosszanti cellaként kezelje az ablakot az Excell? 

 

Szóval pl: ha a felső "hasábba" be akarok szúrni egy új cellaoszlopot időadattal,
de az alsóba nem akarok plusz üres cellaoszlopot betenni, akkor hogy tudom őket szétválasztatni  hogy  külön kezelje a két irány cellaoszlopait?

 

 

Továbbá hogy kell szakszerűen megadni az időadatokat hogy mondjuk a Moszkva térről indul

 

 

06:00 -kor és megállónként +1   +2  +3  + 5 percekkel nőjön az időadata?

Mert  én beállítottam időformátumra és    a cellaértéket:

 =G10+0,003   - ennél 4 percet nő az idő nem 3-at, és sokszor ilyen hibákat jelez.

Nincs valami egyszerű módja ennek?  Köszi szépen. 

-Magnat- Creative Commons License 2008.02.18 0 0 6746

köszi

 

Előzmény: Törölt nick (6744)
Törölt nick Creative Commons License 2008.02.18 0 0 6745
Vagy pedig, ha a vissza irány az oda iránytól jobbra helyezkedik el.
Előzmény: Törölt nick (6744)
Törölt nick Creative Commons License 2008.02.18 0 0 6744
Szerintem csak úgy, ha külön munkalapra teszed őket.
De esetleg tedd fel a kérdést itt is, hátha valakinek lesz ötlete.
Előzmény: -Magnat- (6743)
-Magnat- Creative Commons License 2008.02.17 0 0 6743

Köszi...

 

csak azért kéne szétválasztani az oda és a vissza irányt, mert akkor ha felülre valmiért beszúrok sorokat akkor az alul is megjelenik szóval nagyon hézagos lesz.  Nem lehet külön kezeltetni?

Előzmény: Törölt nick (6741)
Delila669 Creative Commons License 2008.02.17 0 0 6742
Szívesen, örülök, hogy tudod alkalmazni.
Előzmény: eSVé (6740)
Törölt nick Creative Commons License 2008.02.17 0 0 6741
Ha oszlopot szúrsz be, az az oszlop teljes hosszában érvényes, ezzel nincs mit tenni.
Esetleg próbálkozz cellák beszúrásával, az rugalmasabb.

Az idő pedig napokban értendő, tehát 1 = 1 nap.
Ha percet akarsz egy időértékhez hozzáadni, akkor
1/24/60 -at kell hozzáadnod, mivel 24 óra van egy napban, és 60 perc egy órában. Tehát
+ 3 perc = +1/24/60*3
Előzmény: -Magnat- (6739)
eSVé Creative Commons License 2008.02.16 0 0 6740

nagyon köszi szépen, működik és szuper és köszi szépen:)

és még egyszer köszi!!

Előzmény: Delila669 (6738)
-Magnat- Creative Commons License 2008.02.16 0 0 6739
 

Sziasztok!

 

Egy Excelles kérdésben kérem segítségeteket.

csinálok egy menetrend-szerű táblázatot.

 

felül az oda irány, időadatokkal, csatlakozással, alul a vissza irány (egy lapon)

Pl:

Moszkva tér

Batthyány tér

Kossuth tér

Deák tér

 

---------------------------------------------  - itt kéne szétválasztani őket

 

Deák tér

kossuth tér

Batthyány tér

Moszkva tér

 

 

 

Namost a két irány között hogy lehet megoldani azt hogy ne egységes hosszanti cellaként kezelje az ablakot az Excell? 

 

Szóval pl: ha a felső "hasábba" be akarok szúrni egy új cellaoszlopot időadattal,
de az alsóba nem akarok plusz üres cellaoszlopot betenni, akkor hogy tudom őket szétválasztatni  hogy  külön kezelje a két irány cellaoszlopait?

 

 

Továbbá hogy kell szakszerűen megadni az időadatokat hogy mondjuk a Moszkva térről indul

 

 

06:00 -kor és megállónként +1   +2  +3  + 5 percekkel nőjön az időadata?

Mert  én beállítottam időformátumra és    a cellaértéket:

 =G10+0,003   - ennél 4 percet nő az idő nem 3-at, és sokszor ilyen hibákat jelez.

Nincs valami egyszerű módja ennek?  Köszi szépen. 

Delila669 Creative Commons License 2008.02.16 0 0 6738

D1–>1; D2–>2

E1–>aa; E2–>bb

F1-be írom, amit választok, 1-et, vagy 2-t.

G1–> =FKERES(F1;D1:E2;2;HAMIS)

 

A diagram címére kattintva a szerkesztő sorba: =Munka1!$G$1

 

Meg kell adni a lap nevét, anélkül =$G$1 lesz a diagram címe.

 

Természetesen ez irányelv, a magad (lapod) képére kell formálni.

Előzmény: eSVé (6737)
eSVé Creative Commons License 2008.02.16 0 0 6737

Sziasztok,

 

légyszives segítsetek nekem ebben: egy grafikon címét szeretném külső változó alapján változtatni. vagyis ha egy cella értéke "1", akkor a grafikon címe legyen "aa", ha az érték "2", akkor a grafikon címe változzon "bb"-re.

megoldható ez függvénnyel vagy csak makróval?

 

előre is köszönöm az ötleteiteket! :)

 

üdv,

eSVé

magyarpityu Creative Commons License 2008.02.15 0 0 6736
Miért, 1941-ben nem volt augusztus? :))
Előzmény: macmelon (6735)
macmelon Creative Commons License 2008.02.15 0 0 6735
Egyébként tényleg 41-re is csinálja? (Nem csak 31-re vagy 21-re?)
Előzmény: sexy fiú (6730)
sexy fiú Creative Commons License 2008.02.12 0 0 6734
köszönöm a helpeket! :)
Előzmény: Sánta Kutya (SK) (6733)
Sánta Kutya (SK) Creative Commons License 2008.02.12 0 0 6733
Mármint bemásolás _előtt_ állítsd szövegre.
Előzmény: Sánta Kutya (SK) (6732)
Sánta Kutya (SK) Creative Commons License 2008.02.12 0 0 6732
A legegyszerűbb, ha nem akarsz mit kezdeni a számokkal, hogy jelöld ki azt az oszlopot, és a formátum/cellák/szám fülön állítsd szövegre. Ha csinálni is akarsz valamit vele, akkor ne másold be, hanem nyisd meg a txt-t, és tedd azt, amit Delila mondott.
Előzmény: sexy fiú (6730)
Delila669 Creative Commons License 2008.02.12 0 0 6731

A txt behívásakor megjelenő párbeszédablakban a tagoltat jelöld be, a következő ablakban a Határolójel kategóriában a Más választóba írd be a kötőjelet.

Ennek eredménye az egyik oszlopban 41, a másikban 8 lesz. Ha szükséged van a kötőjelre is, beszúrsz egy oszlopot, és beírod.

Előzmény: sexy fiú (6730)
sexy fiú Creative Commons License 2008.02.12 0 0 6730
Jónapot kívánok,
txt fájlból copy-pésztelek szöveget s azt látom hogy pl ebböl:

41 - 8

ezt csinálja:

Aug.41

Kérdés, hol lehet beállitani, hogy ne legyen már annyira okos és ne akarja kitalálni hogy mi lehet az a 41 - 8, a 41 - 8 legyen szépen csak 41 - 8, és ne csináljon belöle Augusztust meg mittomén :)))

Köszönöm!
zsemlemorzsa Creative Commons License 2008.02.11 0 0 6729
Hálás köszönet! :)
Előzmény: Törölt nick (6728)
Törölt nick Creative Commons License 2008.02.08 0 0 6728
Vagy ott van még az irányított szűrő is, azzal egyedi rekordokat tudsz megjeleníteni (adatok/Szűrő/Irányított szűrő egyedi ->rekordok bejelölni
Előzmény: zsemlemorzsa (6726)
Törölt nick Creative Commons License 2008.02.08 0 0 6727
pivottáblával.
vagy darabtali függvényt húzol az oszlopok mellé és leszűröd az 1-nél nagyobbakat, és kitörlöd ha akarod
Előzmény: zsemlemorzsa (6726)
zsemlemorzsa Creative Commons License 2008.02.08 0 0 6726

Sziasztok!

Tudnátok nekem segíteni, hogy hogyan lehet egy adatsorból a duplikációkat könnyedén eltűntetni? (Van egy címlista és sok cím többször is szerepel, azt szeretnénk, hogy mindegyik csak egyszer szerepeljen.)

Nem sikerült egyelőre megtalálnom a megfelelő képletet...

Köszi előre is!

Sánta Kutya (SK) Creative Commons License 2008.02.06 0 0 6725
A \ jelet duplán kell írni, mert escape karakter.
Előzmény: Delila669 (6723)
wawabagus Creative Commons License 2008.02.06 0 0 6724

Köszi a segítséget!

Már egy részét elmentettem pluszba...

De tényleg tök fura, hogy xy-ra is újracsináltam egy csomó makrót és mikor az egyik excel munkafüzetet megnyitom és futtatnám rajta  a makrót...minden összeomlik..olyan, mintha vírusos lenne a fájl, vagy minth aösszeférhetetlen lenne a makró futtatása.

Na midegy, majd csak működik. Megcsinálom századszorra is.

Egyébként be van állítva automatikus mentés :-), de időnkánt agyamra megy.

Na, szóval köszi még egyszer a segítséget!!!!!!!!!!!!!!!!!!!!!!!!!

Köszi

Y.

 

Előzmény: Delila669 (6723)
Delila669 Creative Commons License 2008.02.05 0 0 6723

Az egyéni makrófüzetet personal.xls-nek hívják. A helye:

 

C:Documents and SettingsFelhasználóApplication DataMicrosoftExcelXLSTART

 

A Windows újratelepítése eltüntetheti, ezért én másolatot (többet) készítek róla, amit más meghajtóra teszek.

 

Az Excelben beállítottam az automatikus mentést, így nem feledkezem meg róla.

Ha még nem használtad, az Eszközök/Bővítmények listájában jelöld be az Automatikus mentést, ezután az Eszközök menüben már szerepelni fog, ott beállíthatod a gyakoriságát, és hogy rákérdezzen-e, vagy ész nélkül mentsen.

Előzmény: wawabagus (6722)
wawabagus Creative Commons License 2008.02.05 0 0 6722

Elvileg minden ment úgy ahogy írtátok. Visual Basicben letöröltem öket. Többé nem is jelentek meg ,ha kinyitottam excelben a makrókat.

Legyártottam egy rahedli új makrót...majd egyszer csak "elnézését kérjük bezárjuk az excelt...", újraindította magát az excel és onnantól kezdve nem találom azokat a makrókat sem, amikor korábban 10-15 perce mentette (előtte még megvoltak).

Miért történik ilyen?

Valahogy úgy érzem, hogy a makrók véletlen megsemmisülése elég gyakori jelenség...

Ti mit csináltok ez ellen?

Elmentitek a parancsokat txt-fájlba a biztonság kedvéért...

Szóval elmentettem egyéni munkafüzeltbe kb 10 makrót...el is mentődött, mert mindig megjelentek később...aztán most az egész visszacsinálódott, a régi letörölt makrók újból előkerültek pl...a mentetteknek híre hamva...pedig előtte megvoltak...olyan mintha visszaállított volna egy órával ezelőtti makró felállást...

Kezdek megőrülni :-D...

Mit csináljak, hogy ne tűnögessenek ilyen egyszerűen időnként el a makrók?

 

 

wawabagus Creative Commons License 2008.02.05 0 0 6721

Köszi nektek :-)!!!!!!!!!!!!!

Megtaláltam, azt hiszem menni fog :-)!!

Ezere köszönet!!!

Delila669 Creative Commons License 2008.02.05 0 0 6720

Alt+F11-gyel eljutsz a makró szerkesztőbe (Eszközök/Makró/Visual Basic gyorsbillentyűs megfelelője).

Bal oldalon kiválasztod a füzetedet, ott a Modules címszó alatt megtalálod a moduljaidat. A törölni kívánt modulon jobb kattintás, Remove. Rákérdez, hogy a törlés előtt akarod-e máshova menteni.

 

Az elveszett makrót ugyanitt, a füzeted lapjaira kattintva megtalálod (reméljük), mert lehet, hogy nem külön modulba, hanem valamelyik laphoz rendelted.

Előzmény: wawabagus (6717)
Törölt nick Creative Commons License 2008.02.05 0 0 6719
Ja és még annyit, hogy makrórögzítéskor megkérdezi az excel, hogy melyik munkafüzetben legyen a makró kód tárolva. Erre azért nem árt tekintettel lenni, mert ha egy próbálkozós munkafüzetbe rögzíted, amit mentés nélkül bezársz, akkor oda a rögzítés.
Előzmény: Törölt nick (6718)
Törölt nick Creative Commons License 2008.02.05 0 0 6718
Excelben nyomsz egy Alt+F11-et, erre előjön a Visual basic Editor.
A bal felső sarokban látod a Project Explorert. (Ha nem látod, akkor menüből: View/Project Explorer)
A Project Explorer ablak kb. így néz ki (megpróbálok belinkelni egy képet)


Bármelyik objektum tartalmazhat VBA kódot. Ha pl. a Munka1 objektumra kettőt kattintasz, akkor feljön a munkalapnak a kódmodulja, amelyen a munkalap eseményeihez, illetve a munkalapon elhelyezett vezérlőelemekhez kapcsolódó kódok tárolódnak.
A Forms, Modules és Class Modules kategóriák csak akkor jelennek meg, ha van ilyen típusú objektum a munkafüzetben. A makrórögzítés automatikusan hozzáad egy Module típusú objektumot, (jellemzően Module1, Module2, stb. névvel,) és a rögzített makró ezen a lapon található meg. (Manuális modul, form, ill. class modul hozzáadás az Insert menüpont alatt.) Ha a munkafüzetet frissen megnyitod, a makrórögzítő akkor is új modult ad hozzá, ha már vannak benne modulok korábbi rögzítésekből.

Ha tehát egy makrót törölni akarsz, akkor meg kell keresned a hozzá tartozó kódot valamelyik kódmodulon. Modulok egy az egyben is törölhetők. Ehhez a Project Explorer ablakban jobb kattintás a modulra, aztán Remove.

Előzmény: wawabagus (6717)
wawabagus Creative Commons License 2008.02.05 0 0 6717

Sziasztok!

El tudná valaki nekem magyarázni, hogyan tudok makrót törölni?

Még régebben kísérletezgettem makrókkal és létrehoztam rengeteg hulladés darabot.

A másik kérdésem, hogy "hova tűnhetett" a makró, amit az előbb csináltam :-)...

Eltűnt. Rossz helyen keresem? Mégsem mentődött el?

Ez a makró dolog még nem világos sajna, pedig hasznos.

Köszönöm előre is a segítséget!

Y

Törölt nick Creative Commons License 2008.02.04 0 0 6716
Nem, a Courier betűkkel nem próbálkoztam, mert a makró több különböző gépen is fut, ezt nem akarom állítgatni. Még egy kicsit próbálgatom a vbMsgBoxRight kapcsolót, hátha sikerül valamit összetákolni...
Még egyszer köszönöm a segítséget.
Előzmény: Törölt nick (6715)
Törölt nick Creative Commons License 2008.02.04 0 0 6715
Próbáltad Courier betűkkel?

Lehet még játszani a "vbMsgBoxRight" kapcsolóval is. Pl:

MsgBox "Levizsgálva:" & Format(Osszes, "@@@@@@@@@") & vbNewLine & "Megfelelő: " & Format(Megfelelt, "@@@@@@@@@"), vbMsgBoxRight

Így a számok jól jelennek meg, de a szövegek csúsznak el...
Esetleg lehet TAB-ot tenni a szöveg és a szám közé, pl:

MsgBox "Levizsgálva:" & vbTab & Format(Osszes, "@@@@@@@@@") & vbNewLine & "Megfelelő: " & vbTab & Format(Megfelelt, "@@@@@@@@@"), vbMsgBoxRight

Nem tudom, van-e tökéletes megoldás...
Előzmény: Törölt nick (6714)
Törölt nick Creative Commons License 2008.02.04 0 0 6714

Köszönöm szépen!

 

Próbálkoztam én is egy kis függvénnyel, amely a két szám hosszának különbsége alapján space-eket szúr be, de az sem jó - ahogy írtad - a karakterek különbsége miatt. Azt gondoltam, létezik valami egyszerű pozicionálási lehetőség mint pl. a pascalban vagy a delphiben...

Egyébként, lehet, hogy én csinálok valamit rosszul, de a format függvénnyel is a két szám egymás alatt balra zárt lesz.

Előzmény: Törölt nick (6712)
Törölt nick Creative Commons License 2008.02.04 0 0 6713
Bocsi, a "vbMsgBoxRight" nem kell, csak bennemaradt. Tehát:

Sub Beállít()
Dim Osszes As Long, Megfelelo As Long
Osszes = 54321
Megfelelt = 123
MsgBox "Levizsgálva: " & Format(Osszes, "@@@@@@") & vbNewLine & "Megfelelő : " & Format(Megfelelt, "@@@@@@")
End Sub
Előzmény: Törölt nick (6712)
Törölt nick Creative Commons License 2008.02.04 0 0 6712
Szia!

Ez elég nehéz ügy, szerintem. Ha okosabb válasz nem érkezik, akkor ezt tudom mondani:

A Format függvény alkalmazható (lenne), pl. az alábbi formában (mivel mindkét sor azonos darabszámú karakterből áll).

Sub Beállít()
Dim Osszes As Long, Megfelelo As Long
Osszes = 54321
Megfelelt = 123
MsgBox "Levizsgálva: " & Format(Osszes, "@@@@@@") & vbNewLine & "Megfelelő : " & Format(Megfelelt, "@@@@@@"), vbMsgBoxRight
End Sub

A gond az, hogy a karakterek szélessége alapértelmezésben nem ugyanaz. Ha pl. leírod egymás alá, hogy "123456" és " 456", a szóközök keskenysége miatt a 456 elcsúszik balra. Ha azt akarod, hogy ne csússzon el, akkor a MsgBox alapértelmezését kell megváltoztatni egy helytartó karakterkészletre (pl. courier).
Ezt a képernyő tulajdonságaiban tudod megtenni, (Asztal, jobb klikk, tulajdonságok, megjelenés, speciális, Elem: üzenetpanel) hátránya viszont, hogy nem csak ezt az egy MsgBox-ot, mégcsak nem is csak az Excelt, hanem az egész rendszert érinti.

Alternatívaként esetleg az MsgBox kiváltására létrehozhatsz egy űrlapot, amelyen bármit szabadon formázhatsz és pozicionálhatsz.

Kicsit más: a változók deklarálásakor miden egyes változóra külön kell típust megadni. A Te verziódban az "Osszes" nevű változó Variant típusú volt, nem Long.
Előzmény: Törölt nick (6711)
Törölt nick Creative Commons License 2008.02.04 0 0 6711

Sziasztok!

 

Szeretném megkérdezni, hogy lehet megoldani egy MsgBox-on belül egymás alatti számok pozicionálását, vagyis azt, hogy az egymás alatti számokat jobbra zárással lehessen megjeleníteni. Létezik erre valami frappáns beállítási lehetőség?

 

Sub Beállít()
  Dim Osszes, Megfelelo As Long

 

  Osszes = 54321
  Megfelelt = 123

  

  MsgBox "Levizsgálva: " & Osszes & vbNewLine & "Megfelelő   : " & Megfelelt

End Sub

stromba Creative Commons License 2008.02.01 0 0 6710

http://www.ozgrid.com/VBA/custom-menus.htm

 

Ha a makrókat te írtad akkor ezt is fogod tudni módosítani.

 

Én úgy oldottam meg a hasonló problémámat, hogy a personal.xls-ben indításkor automatikusan elindul a makró menüt létrehozó rutin, a használni kívánt makrók is értelemszerűen ugyanabban a fájlban vannak.

Sajnos office 2007-ben nem működik, és még nem találtam rá automatizált megoldást. Ez úton is szeretném 'megköszönni' a mikroszoft szakembereinek a szalagokat.

 

 

 

 

 

Előzmény: sstefan (6704)
v-m Creative Commons License 2008.01.31 0 0 6709
Nagyon köszönöm!
Előzmény: Törölt nick (6707)
Törölt nick Creative Commons License 2008.01.29 0 0 6708
Például:

Nézet -> Eszköztárak -> Űrlapok eszköztár.
Kattints a GOMB eszközre, majd a munkalapra, és ott a gomb.

A makróhozzárendelés pedig egy menüpont a gomb helyi menüjében (kattintás a gombra jobb egérgombbal).
Előzmény: sstefan (6704)
Törölt nick Creative Commons License 2008.01.29 0 0 6707
Adatok -> Érvényesítés -> Lista
Előzmény: v-m (6706)
v-m Creative Commons License 2008.01.29 0 0 6706
Sziasztok!
A következőt kellene SOS-ben megoldanom, és cserben hagyott az eszem, pedig emlékem szerint korábban már taglaltuk itt (is) ezt a kérdést. Szóval:
Van a, b, c, d, e választási lehetőségem, ezek közül a felhasználónak legördülő menüből kellene választania. Az a, b, c, d, e lehetőségekhez tartozik egy-egy hosszabb szöveges magyarázat.
No, fogtam az a, b, c... tartományt és elneveztem... most fel kellene raknom a lapra a legördülőt, de elakadtam. A továbbiakban azt tervezem, hogy amit kiválaszt az user, fkeressel megkeresem a hozzá tartozó magyarázatot és kiíratom a lapra.
Segítségeteket előre is köszönöm!
magyarpityu Creative Commons License 2008.01.29 0 0 6705
Köszönöm! Működik, bár egyelőre nem igazán értem, mit csinál :)) de lényeg, hogy jó helyre jó sorszámokat ír.
Előzmény: Törölt nick (6701)
sstefan Creative Commons License 2008.01.29 0 0 6704
 

Sziasztok,

 

Van néhány megírt makróm, amit úgy szeretnék futtatni, hogy ne az Eszközök>Makró>Makrók... ból kelljen elindítanom, hanem legyenek gombok az első sorban, amire ha rákattintok lefut az adott makró.

Hogy hozom létre a munkalapon a gombot és hogy hivatkozok az adott makróra?

 

Előre is köszi a segítséget!

 

u.i.:Az Excel probléma-ban is jeleztem, de megírtam ide is, mert itt nagyobb az aktivitás

Törölt nick Creative Commons License 2008.01.29 0 0 6703
Gondoltam, hátha hasznos lehet a hozzám hasonló kezdőknek: Excel tippek
sstefan Creative Commons License 2008.01.29 0 0 6702

Sziasztok,

 

Van néhány megírt makróm, amit úgy szeretnék futtatni, hogy ne az Eszközök>Makró>Makrók... ból kelljen elindítanom, hanem legyenek gombok az első sorban, amire ha rákattintok lefut az adott makró.

Hogy hozom létre a munkalapon a gombot és hogy hivatkozok az adott makróra?

 

Előre is köszi a segítséget!

Törölt nick Creative Commons License 2008.01.29 0 0 6701
Ha lefuttatod az alábbi makrót a nyomtatandó oldalon, a lapdobások utáni cellákat feltölti a megelőző rekord számával. (A makró használata után szerintem nem érdemes elmenteni a fájlt, mert benne maradnak az új számok.)

Sub Kiegeszit()
Dim PB As HPageBreak, WS As Worksheet
Dim c As Range
Set WS = ActiveSheet
For Each PB In WS.HPageBreaks
Set c = PB.Location
If c = "" Then c = c.End(xlUp)
Next
End Sub
Előzmény: magyarpityu (6696)
Törölt nick Creative Commons License 2008.01.29 0 0 6700
Bocsánat, félreértettem.
Előzmény: Sánta Kutya (SK) (6698)
Delila669 Creative Commons License 2008.01.29 0 0 6699

Nem a másik gép, hanem a másik printer tördeli ugyanazt a dokumentumot másként.

A PageBreak-nél keresgélj, ha nem kapsz értelmesebb választ.

Előzmény: magyarpityu (6696)
Sánta Kutya (SK) Creative Commons License 2008.01.29 0 0 6698
Szerintem nem ez volt a kérdés.
Előzmény: Törölt nick (6697)
Törölt nick Creative Commons License 2008.01.29 0 0 6697

Fájl -> Oldalbeállítás -> Lap -> Fent ismétlődő sorok -> az első sor kijelölése

 

Előzmény: magyarpityu (6696)
magyarpityu Creative Commons License 2008.01.28 0 0 6696

Sziasztok! Azt szeretném kérdezni, hogy lekérdezhető-e egy munkalap adott cellájáról, hogy nyomtatáskor hányadik lapra fog esni?

 

Konkrétan, olyan táblázatot szerkesztek, ahol az első oszlopban az adatrekord sorszáma van, ám az adatrekord több sorból áll, és ha egy ilyen több soros rekordot a lapdobás kétfelé vág, akkor a sorszámot az új oldalon is szeretném megjeleníteni. Azaz az első oszlopban van sorszám, ha ő egy adatrekord első sora, vagy ha a sor a lap tetejére eső első sor.

 

Működhet-e ez úgy, hogy más-más gépen más-más helyen lesz a lapdobás? (Hiába az oldalbeállítás, másik gépen nem ugyanúgy jelenik meg a táblázat.)

 

Előre is köszönöm!

VANESSZA 1 Creative Commons License 2008.01.27 0 0 6695
átküldöm inkább
Előzmény: Delila669 (6694)
Delila669 Creative Commons License 2008.01.27 0 0 6694

Adatok/Kimutatás/Több tartomány

 

Csak egy kicsit át kell alakítani a szerkezetet, hogy az A oszlopban és az első sorban címek szerepeljenek, ne mennyiséggel kezdődjön a táblázat.

Pl. A2-> Rendelve, A3-> Felhasználva

B1-> Plüss, C1->Zsákvászon, D1->Hernyóselyem

Előzmény: VANESSZA 1 (6693)
VANESSZA 1 Creative Commons License 2008.01.26 0 0 6693
Ismét lenne egy kérdésem:

Ha készítek egy Excel táblázatot, és azon belül több napi táblázatot ( 01.01, 01.02,01.03,stb)
A lapok a tartalma egy készletnyilvántartás. Anyagokat használok, és A1,B1,C1,...cellákban a rendelt mennyiségük (m2)szerepel.
Az alattuk lévő cellákban (A2,B2,C2...stb)az anyag típusa ( pl. szövet, vászon, bársony,plüss..stb)
És az anyag típus cellák alatt (A3,B3,C3...stb)a felhasznált mennyiség(m2-ben).
Mindezeket szeretném egy lapon összesíteni, de anyag típusok alapján,pl arra lennék kiváncsi hogy az eddigi napok alatt mennyi menyiég lett rendelve vászonból és ezt szeretném az új lapon összesíteni akkor milyen képlettel tudom ezt megtenni?
Nem mindig ugyanott, és nem mindig ugyanannyi típusú anyag van akkor ha jól gondolom cella tömbökben kell keresnem.
Milyen képlettel tudok keresni ha az a célom hogy mennyi vászon lett rendelve összesen az elmúlt napokban, (ennek a mennyisége mindig az anyagtipus feletti cellákba van), és ezt kellene összesíteni.

Tudnátok ebben a képletben is segíteni?
Törölt nick Creative Commons License 2008.01.24 0 0 6692
Jimmy the Hand,  Jozsef

Köszönöm szépen!
Törölt nick Creative Commons License 2008.01.24 0 0 6691
Még annyit tennék hozzá, hogy nem minden munkalapfüggvény használható így, általában azért, mert van ugyanolyan értelmű beépített függvény a VBA-ban.

Pl. a HÉT.NAPJA nem használható WokrsheetFunction-on keresztül, mert van egy sima WeekDay függvény a VBA-ban.
Előzmény: Törölt nick (6690)
Törölt nick Creative Commons License 2008.01.24 0 0 6690
Application.Worksheetfunction.xyz(paraméterek)

ahol xyz a munkalapfüggvény angol neve.

pl.
SZUM(A1:C4) megfelel ennek:
Application.WorksheetFunction.Sum(Range("A1:C4"))

Ehhez természetesen ismerni kell a függvény angol nevét, ami nem mindig triviális.
Legjobb, ha makróként rögzíted azt, amikor beírod a képletet egy cellába, aztán megnézed a rögzített makró kódját.

Pl. ha ezt a képletet írom be az aktív cellába, ami esetemben C15:
=HOL.VAN(D15;A1:A24;0)
akkor a makrórögzítő ezt eredményezi:
ActiveCell.FormulaR1C1 = "=MATCH(RC[1],R[-14]C[-2]:R[9]C[-2],0)"

Ebből látszik, hogy a HOL.VAN függyvény angol neve MATCH. (A többi kriksz-kraksz nem érdekes.)
Előzmény: Törölt nick (6687)
Delila669 Creative Commons License 2008.01.24 0 0 6689
Köszönöm.
Előzmény: Jozsef (6685)
Jozsef Creative Commons License 2008.01.24 0 0 6688
Pl. így
Function mindmegvan() As Boolean

Application.Volatile
If Application.WorksheetFunction.CountA(Sheets("Munka1").Range("A:A")) > 5 Then
mindmegvan = True
Else
mindmegvan = False
End If



End Function
Előzmény: Törölt nick (6687)
Törölt nick Creative Commons License 2008.01.24 0 0 6687
Ismét elemi kérdésem lenne, mégpedig az, hogyan lehet makróban használni (vizsgálni) pl. a SZÁM, DARAB2, ... függvények visszaadott értékeit?

pl.

If DARAB2(A:A) > 5 Then

End
toccata Creative Commons License 2008.01.24 0 0 6686
Köszönet.

Megszületett a nekem teljességgel megfelelő makró, amely minden mentés előtt aktivizálódik:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim shtCurrent As Worksheet

For Each shtCurrent In ActiveWorkbook.Worksheets
shtCurrent.Protect Password:="jelszo", Contents:=True, _
DrawingObjects:=False, Scenarios:=True, _
AllowFormattingCells:=True, AllowFiltering:=True
Next shtCurrent

End Sub


Működik az autoszűrés, lehet megjegyzés írni és a cellák formátumát megváltoztatni.
Előzmény: Törölt nick (6668)
Jozsef Creative Commons License 2008.01.24 0 0 6685
A Public Function-ban az s az útvonal, a keresendő a fájlnév?
Nem, a lényeg ListPDF() sub. Ez csak egy segédfüggvény, amit az csinálja, hogy a keresendő sztringet az s sztringben hátulról indulva kezdi megkeresni. Valamilyen VBA verziótól van ilyen beépített függvény, de hogy mindenhol menjen, inkább ez szoktam használni. Itt arra használtam, hogy a teljes fájlnévben (elérési úttal együtt) az utolsó backslasht pozícióját kerestem meg, mert innen kezdődik a tényleges fájlnév.

Előzmény: Delila669 (6676)
Törölt nick Creative Commons License 2008.01.24 0 0 6684
Köszönöm szépen, azt hittem, létezik valami közvetlen hivatkozás is.
Előzmény: Törölt nick (6683)
Törölt nick Creative Commons License 2008.01.23 0 0 6683
"Egy nagyon elemi kérdésem is lenne, hogyan tudok hivatkozni egy egy cikluson belül egy string (egy szöveg) i. karakterére?"

Mid(S, i, 1)

azaz:
S karaktersorozatból
i-edik karakterpozíciótól számított
1 karakter
Előzmény: Törölt nick (6681)
Törölt nick Creative Commons License 2008.01.23 0 0 6682
Köszönöm szépen, megpróbálom megfejteni a működését.
Előzmény: Törölt nick (6680)
Törölt nick Creative Commons License 2008.01.23 0 0 6681

Köszönöm szépen. Lehet, hogy rosszul fogalmaztam, de nekem éppen az kellene, hogy csak a számok maradjanak (pl. ha a cella érteke ilyen: "    3.200", ebből 3200 legyen). Egy nagyon elemi kérdésem is lenne, hogyan tudok hivatkozni egy egy cikluson belül egy string (egy szöveg) i. karakterére?

 

pl.

 

S = "valami szöveg"

 

For i = 1 to Len(S)

 

  Itt szeretném az S i.-ik karakterét vizsgálni...

 

Next i

Előzmény: Delila669 (6678)
Törölt nick Creative Commons License 2008.01.23 0 0 6680
Ez meg itt egy felhasználói függvény, amit cellaképletekben is felhasználhatsz.
(A tizedespontot vagy -vesszőt is eltávolítja, szóval nem tökéletes.)

Function CsakSzámMaradhat(Cella As Range)
Dim i As Long, S As String
S = Cella.Value
For i = 0 To 255
If i < 48 Or i > 59 Then S = Replace(S, Chr(i), " ")
Next
CsakSzámMaradhat = Replace(S, " ", "")
End Function
Előzmény: Törölt nick (6675)
Delila669 Creative Commons License 2008.01.23 0 0 6679

Nagyon köszönöm, működik.

 

Előzmény: Törölt nick (6677)
Delila669 Creative Commons License 2008.01.23 0 0 6678
Ha egy cellára vonatkozik, ez kitisztítja. Az A1 cella adatát a számok nélkül beírja B1-be.

Sub tisztit()
adat = Cells(1, 1).Value
L = Len(adat): i = 1
For i = L To 1 Step -1
If Mid(adat, i, 1) > Chr(47) And Mid(adat, i, 1) < Chr(58) Then
adat = Left(adat, i - 1) & Right(adat, L - i)
L = L - 1
End If
Next
Cells(1, 2) = adat
End Sub
Előzmény: Törölt nick (6675)
Törölt nick Creative Commons License 2008.01.23 0 0 6677
Tiszteletben tartva József másféle megközelítését, én ezt a megoldást javaslom:


Sub PDF()
Const MyPath = "C:\" 'ezt cseréld ki a megfelelő könyvtár elérési útjára
Dim FN As String, WB As Workbook

ChDir MyPath
FN = Dir(MyPath & "*.pdf", vbNormal)
Do
If FN <> "." And FN <> ".." Then
Set WB = Workbooks.Add
WB.Sheets(1).OLEObjects.Add Filename:=MyPath & FN, Link:=False, DisplayAsIcon:=False
'
'mi egyebet csinálsz még a pdf mellé
'
WB.SaveAs Replace(LCase(FN), "pdf", "xls")
WB.Close False
End If
FN = Dir()
Loop Until FN = ""
End Sub
Előzmény: Delila669 (6672)
Delila669 Creative Commons License 2008.01.23 0 0 6676

A Public Function-ban az s az útvonal, a keresendő a fájlnév?

Hova vigyem be?

Sajna, nem látom át a működését. A backslash-eket beírtam.

Előzmény: Jozsef (6674)
Törölt nick Creative Commons License 2008.01.23 0 0 6675

Sziasztok!

 

Szeretném megkérdezni, hogy van-e olyan függvény, amely a számok kivételével mindent kitisztít a megadott forrásból? Vagy esetleg van-e valakinek kéznél egy ilyen?

Jozsef Creative Commons License 2008.01.23 0 0 6674

adatnev = Right(.FoundFiles(lCount), Len(.FoundFiles(lCount)) - InStrReverse(.FoundFiles(lCount), ""))
sorban lévő "" közé is kell backslash.
Előzmény: Jozsef (6673)
Jozsef Creative Commons License 2008.01.23 0 0 6673
Valami ilyen dolgot szeretnél?
A ".LookIn" sorban azért rakd ki a backslash-t. :)
A For ciklusban berakhatod a PDF fálj feldolgozást, vagy hozzáadhatod pl. egy form ListBox-hoz.
A másik lehetőség a Windows API open dialógus ablak meghívása, ha ez kell, van hozzá kódom.


Public Function InStrReverse(s As String, keresendo As String) As Integer
Dim j As Integer
j = Len(s)
Do While j > 1 And Mid(s, j, 1) <> keresendo
j = j - 1
Loop
InStrReverse = j
End Function


Sub ListPDF()

With Application.FileSearch
.NewSearch

.LookIn = "D:Downloads"
.FileType = msoFileTypeAllFiles
.SearchSubFolders = False
.Filename = "*.pdf"
If .Execute > 0 Then
For lCount = 1 To .FoundFiles.Count
MsgBox .FoundFiles(lCount), , "Teljes filenév elérési úttal"
adatnev = Right(.FoundFiles(lCount), Len(.FoundFiles(lCount)) - InStrReverse(.FoundFiles(lCount), ""))
MsgBox adatnev, , "Teljes filenév elérési út nélkül"



Next lCount
End If
End With
End Sub
Előzmény: Delila669 (6672)
Delila669 Creative Commons License 2008.01.23 0 0 6672

1. Külön-külön füzetbe kellene egyenként beolvastatni egymás után.

2. A könytár állandó

3. Azt meg tudom írni. A beolvasott pdf mellé kell különféle adatokat rögzíteni.

 

Nem ismerem a file címének beolvasását változóba.

Ja, és természetesen a mentés xls-be történik.

Előzmény: Törölt nick (6671)
Törölt nick Creative Commons License 2008.01.23 0 0 6671
Pontosítsunk.

1. Egy könyvárban lévő összes pdf fájlt ugyanabba a munkafüzetbe, csak más lapra? Vagy külön munkafüzetekbe?
2. A könvtár előre rögzített, vagy tallózással keresendő?
3. Az említett "módosítás" manuális, vagy erre már van programod?
Előzmény: Delila669 (6670)
Delila669 Creative Commons License 2008.01.23 0 0 6670
Hello!
Egy könyvtárból egymás után egyenként be kellene szúrni excel munkalapra pdf file-okat, valamit csinálni velük - ez nem gond - majd az xls fájlt a beolvasott pdf nevén menteni.
Úgy is jó lenne, ha a beolvasáshoz mutatná a könytár tartalmát, onnan lehetne kiválasztani, de az még jobb lenne, ha a módosítás-mentés után automatikusan behívná a következőt.
A módisítás az objektum mellé írt adatokból áll.
Köszönöm előre is a segítségeteket.
Törölt nick Creative Commons License 2008.01.23 0 0 6669
mag = meg
Előzmény: Törölt nick (6668)
Törölt nick Creative Commons License 2008.01.23 0 0 6668
Hosszas tökölés után arra jutottam, hogy a munkalap levédésekor

DrawingObjects:=False

lehetővé teszi a megjegyzések beszúrását.

Kérdés, hogy milyen mellékhatásai vannak. A Help szerint ez a Shape objektumok védelmét állítja be. Gondolom, ha a megjegyzések szerkeszthetők, akkor a grafikonok, képek, mag hasonlók is szerkeszthetők lesznek.
Előzmény: toccata (6667)
toccata Creative Commons License 2008.01.23 0 0 6667
Köszi, ezt tudtam eddig is.
A kérdésem az, hogy ezt makróból hogyan tudom megtenni.
Előzmény: Törölt nick (6666)
Törölt nick Creative Commons License 2008.01.22 0 0 6666
Azt találtam a neten, hogy nem lehet csak a nemvédett cellákra engedélyezni a megjegyzés beszúrását. Vagy engedélyezed, vagy nem de akkor az minden cellára vonatkozik, akár védett, akár nem.
Engedéylezni úgy lehet, hogy a munkalap levédésekor teszel pipát az "Objektumok szerkesztése" opció elé is (Edit Objects:=True)

Forrás
Előzmény: toccata (6665)
toccata Creative Commons License 2008.01.22 0 0 6665
Lehet, hogy elnéztem valamit, de nem hiszem. Rengeteget tököltem már vele.
Amikor manuálisan kapcsolom be a védelmet, akkor is kipipálom a cellák formáhatóságát, de akkor csak azok a cellák formázhatóak, amelyen nem védettek. A védettek nem.
A makró esetében pedig minden cella formázható. Akár védett, akár nem.

De ez lenne kisebbik bajom a nagyobb az, hogy megjegyzést nem lehet a makrózott védelem esetén hozzáírni sem a védett, sem a védtelen cellákhoz.
Előzmény: Törölt nick (6662)
szenyor Lopez Creative Commons License 2008.01.22 0 0 6664
Ühüm. Nem értem, de akkor valszeg nincs is rá szükségem:) Azért köszi.
Előzmény: tbando (6661)
Törölt nick Creative Commons License 2008.01.22 0 0 6663
Ez nekem is bejött :-) Ezt is köszönöm!
Előzmény: Törölt nick (6660)
Törölt nick Creative Commons License 2008.01.22 0 0 6662
Nem tudom reprodukálni a hibás működést.

Én a védelem kézi beállítása mellett sem tudok a nem védett cellákba megjegyzést beszúrni, ellenben tudom formázni a védett cellákat. (Ez utóbbin mellesleg nem csodálkozom, tekintettel arra, hogy AllowFormattingCells:=True.)

Nem néztél el valamit?
Előzmény: toccata (6659)
tbando Creative Commons License 2008.01.22 0 0 6661

Amikor egy oszlopra több függvény kell (db, átlag, szórás). Akkor a szumha függvény analógiájára a többi AB jellemző is meghatározható a tömbképletekkel. Természetesen csak az egyszempontú csoportosításoknál alkalmazhatók könnyedén.

Előzmény: szenyor Lopez (6654)
Törölt nick Creative Commons License 2008.01.22 0 0 6660
Nekem ez jött be:

Sub Várj()
UserForm1.Caption = "Számolás"
UserForm1.Show
UserForm1.Repaint
For i = 1 To 10000
Cells(i, 1).Select
Cells(i, 1) = "valami"
Next i
UserForm1.Hide
End Sub
Előzmény: Törölt nick (6658)
toccata Creative Commons License 2008.01.22 0 0 6659
Sziasztok!

Még mindig a múltkori problémámmal küzdök.
Mentéskor lefut az alábbi makró és bekapcsolja minden munkalapon a védelmet. Eddig oké is. Működik az auto szűrés. A gondom még mindig az, hogy bekapcsolt védelem esetén a nem védett cellákhoz továbbra se tudok megjegyzéseket írni, illetve a védett cellák tulajdonságai (háttérszín, tintaszín) viszont megváltoztathatóak. Holott csak a nem védett cellákat lenne szabad módosítani.
Ha manuálisan kapcsolom be a védelmet, akkor minden renben van.


Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim shtCurrent As Worksheet

For Each shtCurrent In ActiveWorkbook.Worksheets
shtCurrent.Protect Password:="pass", Contents:=True, _
DrawingObjects:=True, Scenarios:=True, _
AllowFormattingCells:=True, AllowFiltering:=True
Next shtCurrent

End Sub
Törölt nick Creative Commons License 2008.01.22 0 0 6658

A kérdésem az lenne, hogy miért nem látszik a UserForm-ra rakott Label szövege ("Kis türelemet...")?

Ezzel próbálom belőni a kis tájékoztató dobozt (sajna, még nagyon kezdő vagyok):

 

Sub Várj()

  UserForm1.Caption = "Számolás"
  UserForm1.Show

  For i = 1 To 10000
     Cells(i, 1).Select
     Cells(i, 1) = "valami"
  Next i

  UserForm1.Hide

End Sub

 

Előzmény: Törölt nick (6655)
Törölt nick Creative Commons License 2008.01.22 0 0 6657
Nincs mit :-)
Előzmény: Törölt nick (6656)
Törölt nick Creative Commons License 2008.01.22 0 0 6656
Köszönöm szépen, ezt kerestem.
Előzmény: Törölt nick (6655)
Törölt nick Creative Commons License 2008.01.22 0 0 6655
Userform.ShowModal property (tervezési időben állítható)
Előzmény: Törölt nick (6653)
szenyor Lopez Creative Commons License 2008.01.22 0 0 6654

"Én az összetett pivottáblákra szeretem használni őket, mert barátságosabb a layoutjuk mint a Kimutatásnak."

 

Ez alatt mit értesz? Mi az az összetett pivot tábla?

Előzmény: tbando (6652)
Törölt nick Creative Commons License 2008.01.22 0 0 6653

Sziasztok!

 

Azt szeretném megkérdezni, hogyan lehet azt megcsinálni, hogy egy makró futása közben egy kis tájékoztató tábla jelenjen meg ("Kérem várjon..."), majd a makró végén ez tünjön el. A konkrét kérdesem az lenne, hogy meg lehet-e csinálni azt, hogy pl. egy UserForm1.Show után a fókusz a makró következő utasításaira kerüljön és így továbblépjen?

tbando Creative Commons License 2008.01.21 0 0 6652

valami tömbképletes trükk HA() függvénnyel.

 

Ezek valóban marha praktikusak tudnak lenni. Mivel dinamikusan vezérelhetők. Az AB függvényekkel müködnek. Én az összetett pivottáblákra szeretem használni őket, mert barátságosabb a layoutjuk mint a Kimutatásnak. Mivel az azonos osztályhoz tartozó eredményeket egymás melletti és nem egymás alatti cellákban hozzák. További nagy előnyük, hogy mindig az aktuális állapotot mutaják, tehát nem kell klikkelgetve frissiteni. De sajnos vannak korlátaik. Pl. hogy az összetett kritériumot nem értik (tehát az ÉS-t és a VAGY-ot). Ha ilyet akarsz, akkor az összetett kritériumra csinálnod kell egy plusz eredményoszlopot. 

Előzmény: Törölt nick (6643)
telescoper Creative Commons License 2008.01.21 0 0 6651
Ó, bocsi, ha jól látom a 6558 körül is ezt tárgyaltátok, érdekes először is olvasással kezdtem, de elkerülte a figyelmememet!
telescoper Creative Commons License 2008.01.21 0 0 6650

Sziasztok!

A fórumok másik vidékéről kerültem ide, ha kérhetném segítsetek (ha csillagász kérdésetek van, akkor én is tudok talán).

 

A problémám az lenne, hogyan tudok egy cellának olyan értéket adni, ami aztán  más cellák l

értékének kiszámításában konstansként szerepel.

Szóval legyen a  C2 cella értéke A3*B3*A1. Ha ezt a képletet leviszem egy sorral lejjeb, akkor A4*B4*A2 lesz, de én azt szeretném, ha itt is maradna az A1 konstansként.

Gondolom ez nektek egyszerű, de képtelen vagyok rájönni, hogyan kell csinálni, holott emlékeim szerint pár éve már csináltam ilyet.

A segítségeteket előrei is köszönöm!

üdv

telescoper

VANESSZA 1 Creative Commons License 2008.01.21 0 0 6649
Igen, nagyon sok,és én csoprtbontással használom, mert akkora az Excel táblázatom hogy áttekinthetetlen lenne.
Előzmény: tbando (6648)
tbando Creative Commons License 2008.01.20 0 0 6648

Ne haragudj, de mik ezek a cellák: TZ6 ,ZH8,RT3,RR8?

 

A 2007-ben már ennyi sok oszlop van?

Előzmény: VANESSZA 1 (6642)
tbando Creative Commons License 2008.01.20 0 0 6647

Hát csak annyit jelent, hogy az Darabteli nem alkalmas nem egybefüggő tartományokban való keresésre.  Tehát ahány tartományaban akar, annyi darabtelit kell kreálni. Aztán ezek eredményei már összeadhatók.

 

Az AB.DARAB persze praktikusabb. Persze sok függ attól, hogy mi a feladat. Amit ugye nem ismerünk. 

Előzmény: Törölt nick (6646)
Törölt nick Creative Commons License 2008.01.20 0 0 6646
Bocs az értetlenkedésért de ezt most nem értem
Előzmény: tbando (6644)
Törölt nick Creative Commons License 2008.01.20 0 0 6645
pontosabban az AB.DARAB2
Előzmény: Törölt nick (6643)
tbando Creative Commons License 2008.01.20 0 0 6644
Lehet. Öttel. Aztán összeadod őket.
Előzmény: VANESSZA 1 (6642)
Törölt nick Creative Commons License 2008.01.20 0 0 6643
Hát, erre igazából az AB.DARAB való szerintem. Jobbat majd az okosabbak, biztosan van erre is valami tömbképletes trükk HA() függvénnyel.
Előzmény: VANESSZA 1 (6642)
VANESSZA 1 Creative Commons License 2008.01.20 0 0 6642
A DARABTELI képletet lehet valahogy úgy is használni, hogy nem egybefüggő soroknál, vagy oszlopoknál?

Pl.: AS5, TZ6 ,ZH8,RT3,RR8,-as celláknál a xyx-el jelöltek számát szeretném tudni.
Delila669 Creative Commons License 2008.01.20 0 0 6641
Kereszteztük egymást, mondtam, hogy világosabban fogalmazol.
Előzmény: Jozsef (6639)
Delila669 Creative Commons License 2008.01.20 0 0 6640

Úgy látszik, Józsefnek más dolga van, próbálok válaszolni helyette.

Az időt percekké számolja át (24 óra * 60 perc). Ezt kerekíti fel 0 tizedes pontossággal, azután visszaalakítja a /(24*60)-nal.

József biztosan érthetőbben írná le.

Előzmény: VANESSZA 1 (6638)
Jozsef Creative Commons License 2008.01.20 0 0 6639
Ha egy időértéket beszorzol 24*60-val, akkor megkapod számként, hogy hány percről van szó. Pl. ha beírod A1 cellába, hogy 3:32:30 és a mellette lévő cellába =24*60*A1, megformázod számra, akkor 212,5 kapsz.
Az osztásra a végén azért van szükség, hogy a kerekítés után megint időérték legyen belőle.

Előzmény: VANESSZA 1 (6638)
VANESSZA 1 Creative Commons License 2008.01.20 0 0 6638
Köszi, ez működik, de mi az a rész hogy:
*24*60;0)/(24*60)

Már azért kérdem hogy ne csak bemásoljam, értsem is a képletet.
Előzmény: Jozsef (6636)
Delila669 Creative Commons License 2008.01.20 0 0 6637
Iden, ez átláthatóbb.
Előzmény: Jozsef (6636)
Jozsef Creative Commons License 2008.01.20 0 0 6636

pl.
=KEREK.FEL((A1+B1)*115%*24*60;0)/(24*60)
A cellaformátuma legyen idő.
Előzmény: VANESSZA 1 (6630)
Delila669 Creative Commons License 2008.01.20 0 0 6635
Nem D1, hanem a C1 képlete lesz a módosított.
Előzmény: Delila669 (6634)
Delila669 Creative Commons License 2008.01.20 0 0 6634

A képletben a C1 helyére a cserél funkcióval behelyettesíted az előző C1 képletét.

Ezután a D1 így fog kinézni:

 

=HA(MPERC((A1+B1)*115%)>0;IDŐÉRTÉK(ÓRA((A1+B1)*115%)&":"&PERC((A1+B1)*115%)+1&":"&MPERC(0));(A1+B1)*115%)

 

A formátuma mindhárom cellának idő: 13:30:55

Előzmény: VANESSZA 1 (6632)
Törölt nick Creative Commons License 2008.01.20 0 0 6633
Bocs, hogy belebeszélek.


Ezt a képletet:
C1-be

=(A1+B1)*115%


Írd be az ebben lévő C1-ek helyére:
D-be

=HA(MPERC(C1)>0;IDŐÉRTÉK(ÓRA(C1)&":"&PERC(C1)+1&":"&MPERC(0));C1)

Előzmény: VANESSZA 1 (6632)
VANESSZA 1 Creative Commons License 2008.01.20 0 0 6632
A "c" oszlopba nem lehet azt megcsinálni, hogy a+b*115%és még kerekitse is fel?
Nem szeretnék mégegy "d" oszlopot.
Előzmény: Delila669 (6631)
Delila669 Creative Commons License 2008.01.20 0 0 6631

"A" és "B" oszlop a két összeadandó idő,

 

C1-be

=(A1+B1)*115%

 

D-be

=HA(MPERC(C1)>0;IDŐÉRTÉK(ÓRA(C1)&":"&PERC(C1)+1&":"&MPERC(0));C1)

Előzmény: VANESSZA 1 (6630)
VANESSZA 1 Creative Commons License 2008.01.20 0 0 6630
Köszönöm mindenkinek a multkori segítséget!

Lenne most is egy kérdésem:

Kerekíteni szeretnék egy idő formátumú számot felfelé, egészre, tehát ha 0:15:40 az eredmény ezt szeretném ha felfelé kerekítené.Pontosan az lenne a jó ha 0:16 lenne
Jelenleg ez a cella képletem:

=SZUM(A1;B1)*115%

Tehát összeadja a két cellát, és 115%-al szorozza, de ezt kellene még kombinálni hogy felfelé kerekítse egész percre.

Én erre a képletre gondoltam, de nem az lesz amire én gondolok.:

=KEREK.FEL((SZUM(A1;B1)*115%);0)
Törölt nick Creative Commons License 2008.01.18 0 0 6629
Igen, pontosan ezt szerettem volna! Nagyon köszönöm!
Előzmény: Törölt nick (6628)
Törölt nick Creative Commons License 2008.01.18 0 0 6628
Valami ilyesmire gondoltál?

Worksheets("Munka2").Cells(t + 1, 3).Formula = "=Munka1!" & Cells(t, 4).Address

Nem teszteltem, de ez elvileg átveszi a "Munka1"-en az összegző képletet tartalmazó cella értékét. (Tehát nem végez el egy újabb összegzést.)



Előzmény: Törölt nick (6627)
Törölt nick Creative Commons License 2008.01.18 0 0 6627

 

Egy pici hiba az előzőnél, de ez a lényeget nem érinti...

 

Worksheets("Munka2").Cells(t + 1, 3) = ?

Előzmény: Törölt nick (6625)
magyarpityu Creative Commons License 2008.01.18 0 0 6626
Ez döbbenetes! Sosem jöttem volna rá :)) Köszönöm!
Előzmény: Törölt nick (6624)
Törölt nick Creative Commons License 2008.01.18 0 0 6625

Sziasztok!

 

Ismét segítséget szeretnék kérni. Adott két munkalap (Munkalap1; Munkalap2). Egy cikluson belül a "Munkalap1"-en egy szummázást készítek, amelyet (a cikluson belül) sehogy sem tudok áttenni a "Munkalap2"-re, úgy, hogy ha a makró futása után a használatkor, a "Munkalap1"-en változik a szumma értéke, változzon a "Munka2"-n is.

 

Ime a makró egy részlete:

 

Sub Összesítés()

 

  For i = 1 To ActiveSheet.UsedRange.Rows.Count

 

    Worksheets("Munka1").Cells(t, 4).FormulaR1C1 = "=SUM(RC[-3]:RC[-1])"
    Worksheets("Munka2").Cells(t - 1, 3) = ?

 

  Next t


End Sub   

Törölt nick Creative Commons License 2008.01.18 0 0 6624
Az okot illetően csak találgatni tudok. Ez az elméletem:
A program a műveleteket mindig egy láthatatlan, háttérben tárolt értéken végzi el, és csak ez után adja át a felületnek, hogy az formázza kedvére. De a program angolul gondolkodik. Angolul a vessző (",") karakter az ezres helyiértékek elválasztására szolgál. Az eredeti adatod szöveg formátumú, de amikor a pontot programból kicseréled vesszőre, akkor számmá konvertálódik, amelyben a vessző egy ezerszeres szorzást jelent. Ezután a felület megkapja az immár 1000-szer akkora számot, és megformázza magyar területi beállítások szerint.

Szerintem az Excel magyarítása során cseszhettek el valamit. Mindenesetre a problémának nevetségesen egyszerű a megoldása, csak hát épeszű ember nem nagyon gondolna rá. És mégis működik.

Sub Formatum()
Columns("F:K").Select 'itt vannak az értékek
With Selection
.ColumnWidth = 10
.HorizontalAlignment = xlCenter
.NumberFormat = "0.00"
.Replace What:=".", Replacement:=".", _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False
End With
End Sub

Tehát cseréld ki a pontot... pontra (!).

Előzmény: magyarpityu (6623)
magyarpityu Creative Commons License 2008.01.18 0 0 6623

Szaisztok!

 

Segítséget szeretnék kérni! Mikor szövegfile-ból beszúrt lebegőpontos számnál a tizedespontot "."-ról ","-re cseréltetem makróval, akkor az eredmények 1000-szerese jelenik meg. A Szerkesztés/Csere... művelettel jól megy, de ezzel nem:

 

Sub Formatum()

   Columns("F:K").Select  'itt vannak az értékek

   With Selection

      .ColumnWidth = 10

      .HorizontalAlignment = xlCenter

      .NumberFormat = "0.00"

      .Replace What:=".", Replacement:=",", _

         LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False

   End With

End Sub

 

Mi lehet a hiba? Miért szorozza meg a számokat 1000-el a gép? Előre is köszi!

Törölt nick Creative Commons License 2008.01.18 0 0 6622

Köszönöm szépen!

 

Eredetileg így gondoltam én is, de direkt nem kapcsoltam ki a figyelmeztetést a biztonság miatt, mert a programnak csak a második igenre kell törölnie az adott munkalapot. Ezért kerestem ennek a lekezelhetőségét....

Előzmény: stromba (6621)
stromba Creative Commons License 2008.01.17 0 0 6621

inkább csináld így:


Z = MsgBox("Szeretné törölni a Sheet1 munkalapot?", vbYesNo)

' Yes = 6 no = 7
If Z = 6 Then
    Application.DisplayAlerts = False
    Worksheets("Sheet1").Delete
    Application.DisplayAlerts = True
Else
' ha a nemet választotta...

 

End If

Előzmény: Törölt nick (6618)
cezec Creative Commons License 2008.01.17 0 0 6620
Az lenne a kérdésem, hogy van-e olyan lehetőség az Excelben, hogy kialakítok egy űrlapszerű táblázatot és rögzítem a formátumot. Azt szeretném hogy ne engedje pl az oszlopok sorok átméretezését, egyedül a mezők kitöltését és a mentést engedje.
tbando Creative Commons License 2008.01.17 0 0 6619

Kösz. Egyébként csak az excel hülyéskedik.

 

Eccer volt Wordben egy oly olyan filem, ami ha hozzáírtam egy karaktert elszállt. Azták kisakkoztam, egy láthatatlan karakter okozta a zürt. Miután azt kitörültem, megszünt a hiba. Mivel az excelbe gyakran copyzok táblákat a netről, azt hittem, most is valami ilyesmi lehet. De úgy tűnik nem. 

Előzmény: Törölt nick (6615)
Törölt nick Creative Commons License 2008.01.17 0 0 6618
Sziasztok!

 

Szeretném megkérdezni, hogy makró futása közben hogyan lehet az alábbi beépített választás eredményét lekérdezni, vagyis pl. azt, hogy a mégsem gombot választotta.

 

 

Előre is köszönöm.

Delila669 Creative Commons License 2008.01.17 0 0 6617

A második kimutatás készítésétől kezdve a "varázsló" megkérdezi, hogy az új kimutatás az elsőn alapuljon-e (kevesebb memóriát használ, stb).

Amelyik újakat így készíted, azok egyszerre frissülnek.

imray Creative Commons License 2008.01.17 0 0 6616
Vannak olyan Excel munkafüzeteim, amelyekben több munkalapon is kimutatások vannak (régen ezeket Pivot tábláknak hívták). Ha ráállok az egyikre, és frissítem az adatokat, akkor az összes többi mukalap kimutatása is frissül.
Hol/hogy lehet ezt beállítani? Én is szeretnék ilyen munkafüzeteket csinálni, mert praktikus.
Törölt nick Creative Commons License 2008.01.17 0 0 6615
Hát.. csak a szokásos dolgok jutnak eszembe:

1. Nézz utána, nincs-e vírusod. Én ezt úgy tenném, hogy egy vélhetően vírusmentes gépbe átteszem a vinyót, mert van olyan vírus, ami, ha aktív, kijátssza a víruskergetőt. Az én gépemen lévő vírus nem aktiválódik, ha a másik gép operációs rendszerét indítom, tehát esélyesebb a megtalálása.

2. Próbálkozz az Excel újratelepítésével.

3. Csak az Excel hülyéskedik, vagy más programokkal is vannak gondok? Lefagyások, kékhalál, ilyesmi? Ha általános érvényű a jelenség, akkor lehet hardver-, pl. memória- vagy tápegységproblémára gyanakodni. Esetleg merevlemez is lehet.
Előzmény: tbando (6610)
sexy fiú Creative Commons License 2008.01.17 0 0 6614
köszi köszi köszi!!!! szuper! :)))
tbando Creative Commons License 2008.01.16 0 0 6613
És egy praktikus tanács 6558-hoz. Szerkesztésmódban nyomogasd az F4-t. A kurzor érintkezzen az E15 hivatkozással.
Előzmény: sexy fiú (6611)
Törölt nick Creative Commons License 2008.01.16 0 0 6612
Az E15-ben tegyél $ jelet a 15 elé: E$15
A $ jel rögzíti az oszlop- illetve sorindexeket. Pl. $E$15-ben az E oszlop is fix, tehát jobbra-balra húzgálva a képletet sem változik.
Előzmény: sexy fiú (6611)
sexy fiú Creative Commons License 2008.01.16 0 0 6611
Hello, az volna a triviális kérdésem hogy

E15-ben van egy szam: 2 (ez a "szorzó")
_A_ oszlopban egymas alatt 2,3,4 stb
_B_ oszlopba képletet akarok: =A1*E15

ha most ezt a képletet lehúzom, akkor ugye azt látom hogy
=A1*E15
=A2*E16
=A3*E17

de hogy kell azt hogy csak az _A_ növekedjen, az E maradjon mindig E15
tehát ezt akarom:
=A1*E15
=A2*E15
=A3*E15
tbando Creative Commons License 2008.01.16 0 0 6610

Sziasztok!

 

Az Excel 2000-m mostanában elkezdett produkálni néhány bosszantó jelenséget. Komolyabb probléma még nem származott belőlük, de valahogy balsejtelmeim vannak, hogy ezek valami keményebb probléma előszelei lehetnek. Abban bizom, hogy tudtok valami magyarázattal és/vagy tanáccsal szolgálni.

 

1.  Kb. 2 hónap óta, amikor kilépek az Excelből, rendesen lement, majd megjelenik az obligát hibaüzenet: "A Windows hibát észlelt, elnézést kérnek az adatvesztésért, küldjem el a hibát stb," majd jön a semmitmondó hibamagyarázat, hogy frissitsek. Frissitenék de nem talál semmi frissiteni valót. Csinálja mindezt a hibátlan lementések  után.  Ja és még valami. Nem minden táblázatnál, de egyre gyakrabban.

 

2. Néhány nap óta ha megnyitom a Beszúrás-Megjegyzést, akkor utána nem akar becsukódni. Ki kell törölni a cellát. Tehát pratikusan megszünt a cellamegjegyzés lehetősége. Ami elég bosszantó az esetemben.

 

3. Ma meg azt kezdte el játszani, hogy az üres területek oszlopszélességét átállítja.  A duplájára. Aztán ha visszaállítom akkor utána normális marad.  Legalábbis egyelőre. 

 

Tudtok ezekre mondani valamit?

lumi Creative Commons License 2008.01.11 0 0 6609
Koszonom a segitseget, a telepuleslista helyes 2. vh-s járásokat tartalmazza, telivan olyan telepulessel ami azota nevet valtoztatott / megszunt. De rajottem, hogy a fobb varosokat veletlen egy ovatlan pillanatban landoltattam a kukaban, most keszitem az ujat. Koszonom meg egyszer, ha ha sikerul ha nem jelzem :)
Előzmény: Jozsef (6608)
Jozsef Creative Commons License 2008.01.11 0 0 6608
Megnéztem.
Pár dolgot kipróbáltam magyarországi településekre. Íme egy javaslat, ami teljesen nem oldja meg a problémát, de 90-95% automatizálni tudsz.
0. Irányított szűrővel gyűjtsd ki a különböző országokat külön munkalapra. Az üres cellák se kerüljenek bele. A továbbiak csak magyar településről beszélünk.
1. A helyes településnevek listája közel sem teljes pl. hiányoznak belőle a nagyobb városok, Budapest, Szolnok, Miskolc stb. Ezért az javaslom, hogy a www.posta.hu-ról töltsd le Excel formátumba az település-irányítószám listát és csinálj belőle egy tényleg helyes településlistát (Budapest, Miskolc stb elég ha csak egy szerepel). Legyen ez mondjuk a Helyes munkalap B oszlopában
2. A Helyes munkalap A oszlopában állítsd elő a településnév ékezetelen változatát a következő VBA függvénnyel:
Function EkezetTorol(szoveg As String) As String
Dim ekezetes, ekezetnelkul, seged As String
Dim i As Integer
seged = UCase(szoveg)
ekezetes = "ÁÉÍÓÖŐÚÜŰ"
ekezetnelkul = "AEIOOOUUU"
For i = 1 To Len(ekezetes)
seged = Replace(seged, Mid(ekezetes, i, 1), Mid(ekezetnelkul, i, 1))
Next i
EkezetTorol = seged
End Function

(egyébként ez még nagybetűssé is teszi)
Tehát a Helyes munkalap
A1: =EkezetTorol(B1)

és végéig másolni
3. A javítást most már FKERES-sel megcsinálhatodí pl.
D2: =HA(NEM(HIBÁS(FKERES(B2;Helyes!$A:$B;2;HAMIS)));FKERES(B2;Helyes!$A:$B;2;HAMIS);"")
és végéig másolni.
4. A fennmaradó településeket legvégső soron kézzel javítod.
Üdv
József
Előzmény: lumi (6606)
lumi Creative Commons License 2008.01.11 0 0 6607
Valtozott a cim, az ftpm beadta a kulcsot :)
http://lumi.beats.hu/lakhely.xls
Előzmény: lumi (6606)
lumi Creative Commons License 2008.01.11 0 0 6606
Megcsinaltam csak erre a problemara az excelt.
Lehet neked/nektek csak egy klikk lenne en meg mar napok ota ugyetlenkedek.
A javitando reszt kene kicserelni ha talal hasonlot a helyesben, ha nincs/vagy nem magyar akkor hagyja uresen, a cellat.

http://www.dreamworld.hu/lakhely.xls

Koszonom szepen ha valaki fordit idot a belenezesbe.
Előzmény: Jozsef (6602)
lumi Creative Commons License 2008.01.11 0 0 6604
Koszonom a valaszt,
a Kecskemét csak egy pelda az erthetoseg kedveert, sajnos iranyitoszam nincs hozzakotve. A hasonlosagbol kene nekem kivalasztani a jo tablabol egy legjobban passzolot, ezt nem tudom hogyan lehetne megirni. A milliomos osszeg szepen hangzana, de sajnos picivel tobb mint minimalberezett adatrogzitoi munkarol van szo :)
Előzmény: Jozsef (6602)
Watchdog Creative Commons License 2008.01.11 0 0 6603
Ki kell vonni a két időpontot egymásból. Az eredmény egy szám, ami napban mérve ábrázolja az időt. Ha ezt megszorzod 24-gyel, akkor az eredmény egész része az eltelt órák száma.
Ha a kivonás után az eredmény cella formátumát "idő"-re módosítod, akkor egyből az időkülönbséget kapod.
Előzmény: mzsperx (6594)
Jozsef Creative Commons License 2008.01.11 0 0 6602
kb 30ezer kulonbozo telepules van elgepelve :) vagy ekezet lemaradva.

Nézd, ha jellemzőenvan benne szisztéma, pl. Kecskemét mindig KECZKEMET, akkor csinálsz egy táblát pl. Posta írányítószám állománya alapján és FKERES fv. kigyűjtöd a jó verziót. A többire marad a manuális megoldás.
Egyes betűelírásokat CZ CS helyett Szerkesztés/Csere menüponttal megoldhatsz.
Szóba jöhet meg az Eszközök/Automatikus javítás, de ilyen mennyiségnél az FKERES-es jobban kezelhető.
Ha ettől rosszabb a helyzet, tehát össze-vissza vannak elírva, akkor lehet írni rá hasonlóság vizsgáló függvényeket, amik pl. pontozzák a rossz neveket mennyire hasonlít a valamilyen jó településnévre és egy bizonyos pontszám felett cserélsz automatikusan. A többi itt is manuális. De azért ne várd, hogy itt majd valaki egy jellemzően milliós összegbe kerülő adattisztítási munkára komplett megoldást ad neked:)
Üdv
József
Előzmény: lumi (6600)
Delila669 Creative Commons License 2008.01.11 0 0 6601

Szia!

 

Ha a lapjaidon a különböző termékek azonos cellában vannak a lapokon (termék_1 darabszáma minden lapodon a B1 cellában van), akkor az összesítő lap B1 cellája:

 

=szum('01.02:01.31'!b1)

 

Ha nem azonos a helyük, akkor Adatok/Kimutatás/Több tartomány.

Előzmény: VANESSZA 1 (6598)
lumi Creative Commons License 2008.01.11 0 0 6600
hogy erre pont nem gondoltam :)
kb 30ezer kulonbozo telepules van elgepelve :) vagy ekezet lemaradva.
szerencsetlen kis office a kisfaluk megyeit sem ismeri nemhogy sajat magat.
Előzmény: Törölt nick (6599)
Törölt nick Creative Commons License 2008.01.10 0 0 6599
használj helyesírás-ellenőrző programot.
Eszközök/Beállítások/Helyesírás fül
Előzmény: lumi (6597)
VANESSZA 1 Creative Commons License 2008.01.10 0 0 6598
Köszönöm, és még egyet kérdeznék, ha naponta készitek egy termék előállitási listát excelbe, ami különböző darabok mennyiségét tartalmazza. 01.02 a lap neve,(január másodika,)...és igy tovább, jelenleg a 01.10 nél tartok. lehet arra valami általános képletet késziteni hogy az utolsó (Havi nevü lapon) szeretném összesiteni a J6-os excel táblák tartalmát akkor milyen képletre van szükségem? Nyilván szombat, vasárnap nem készitek napi listát.
Erre létezik megoldás?
Előzmény: Jozsef (6595)
lumi Creative Commons License 2008.01.10 0 0 6597
Valaki tudna segiteni? :)
Előzmény: lumi (6576)
Jozsef Creative Commons License 2008.01.10 0 0 6596
Úgy tudom, Wordben nincs olyan mező, amivel direkben felhasználi függvényt tudnál meghívni. Makróval lehet trükközni, vagy megcsinálhatod a csekket wordben és körlevél ként nyomtatod, úgy hogy az adatforrás Excelben legyen.
Üdv
József
Előzmény: Törölt nick (6593)
Jozsef Creative Commons License 2008.01.10 0 0 6595
SZia!

Ha esetleg nem akarsz bonyolult képletekkel foglalkozni (bár szerintem ezek sokkal átláthatóbbak), akkor lehet trükközni.
Az Excel a dátumot és időt számként kezeli, a szám egészrésze a 1900 jan. 1-től eltelt napok száma(egyként Ms bugtól eltekintve :) ), a törtrésze napon belüli időpontot jelenti.
Ha csak annyi van egy cellába, hogy 8:15:00, akkor ez igazából 1900.01.01 8:15:00, és számként 0,34375 jelent.
Ha ezt megszorzod 24-gyel akkor órában kapod meg az időt: 8,25.
Tehát pl. a túlórás képletet jól lehet így is fel lehet írni:
=HA((b2-a2)*24>8,5;(b2-a2)-8/24;b2-a2)
Természetes a cellaformátum idő legyen. A túlórákat gondolom összegezni is szeretnéd. Erre cellaformátum [ó]:pp:mm legyen!
Egyébként ezt a 24-való szorzásos dolgot jól lehet felhasználni, ha időt kerekíteni kell (órára, negyedórára, félórára, 10percre stb.)
Üdv
József
Előzmény: VANESSZA 1 (6586)
mzsperx Creative Commons License 2008.01.10 0 0 6594
sziasztok!

a kérdésem a következő lenne: hogy lehet számokat csinálni időpontból
vagyis a két időpont között eltelt órák számára lennék kíváncsi.
Jozsef Creative Commons License 2008.01.10 0 0 6592
hogy a helyesírási szabálynak megfelelően nagy kezdőbetűvel írja szövegesen az összeget.
Különböző okok miatt (pl. ez nekem sem így kellett :) ), ezt én opcionálisan raknám bele.

Function szam2szoveg(szam As Long, capitalize As Boolean) As String
....

If capitalize Then betu = UCase(Left(betu, 1)) & Right(betu, Len(betu) - 1)
...
Előzmény: Delila669 (6589)
Delila669 Creative Commons License 2008.01.10 0 0 6590
A Wend után...
Előzmény: Delila669 (6589)
Delila669 Creative Commons License 2008.01.10 0 0 6589

A Wend sor elé beírnám ezt:

 

betu = UCase(Left(betu, 1)) & Right(betu, Len(betu) - 1)

 

hogy a helyesírási szabálynak megfelelően nagy kezdőbetűvel írja szövegesen az összeget.

Előzmény: Jozsef (6583)
Delila669 Creative Commons License 2008.01.10 0 0 6588
Raulnak a 6509-es kérdésére válasz.
Előzmény: Törölt nick (6584)
Delila669 Creative Commons License 2008.01.10 0 0 6587

Szia VANESSZA,

 

A Prohardveren is feltetted ugyanezt a kérdést, nézd meg, ott van egy letisztultabb válasz.

Előzmény: VANESSZA 1 (6586)
VANESSZA 1 Creative Commons License 2008.01.09 0 0 6586
Nagyon köszönöm, sokat segítettél, és megspóroltál nekem jó néhány álmatlan éjszakát.

Még azt meg kérdezném, ezen te mit értesz:
"D2-be rafináltabb képlet kell (vagy a 8 óránál kevesebb időt, vagy 8-tól 8:30-ig 8 órát ad, vagy 8:30 fölött a teljes bent töltött időt adja):

=HA(VAGY(ÉS(C2>IDŐ(8;0;0);C2<IDŐ(8;31;0));C2>=IDŐ(8;30;0));IDŐ(8;0;0);C2) "

A harmadik vagy alatt azt érted, hogy a teljes bent töltött idő ( max. 8óra ) vagy az egész, ha pl. 10 órát dolgozol akkor a 10 órát irja ki? mert ezt az utobbit nem teszi meg, hanem ha eléred a 8:31 felettit akkor is a 8:00 irja .
És csak a következő sorba irja ki a a másik általad kapott képlettel a túlórát.

Van mód rá hogy leird vagy bemutasd hogy tudok ilyen bonyolultabb képletet létrehozni?
Függvénytündérrel megy ez is?

Még1x nagyon köszönöm!!
Előzmény: Delila669 (6561)
Törölt nick Creative Commons License 2008.01.09 0 0 6584
Mire jó ez a Micu féle xlb?
Előzmény: Delila669 (6564)
Jozsef Creative Commons License 2008.01.09 0 0 6583
A 2432. hsz-ban lévő kód tudja ezt is.
Előzmény: Törölt nick (6582)
Jozsef Creative Commons License 2008.01.09 0 0 6580
A. görgesd lejjebb a listát az Információ után kell lennie a Felhasználói kategóriának.
B, rossz helyre vagy nem teljesen (Function sortól az End Function-ig) másoltad át.
Előzmény: Törölt nick (6578)
lumi Creative Commons License 2008.01.09 0 0 6576
Sziasztok, a segitsegeteket szeretnem kerni az alabbi ugyben.

Kene nekem irni egy olyan fuggvenyt vagy barmit, ami egy tablazatban levo hibasan beirt/elgepelt/ekezetet lehagyott szoveget kicserel egy olyan tablazattal amiben helyesen van.
pl: KECZKEMET -et lecsereli Kecskemét -re.
lumi Creative Commons License 2008.01.09 0 0 6575
Sziasztok, a segitsegeteket szeretnem kerni az alabbi ugyben.

Kene nekem irni egy olyan fuggvenyt vagy barmit, ami egy tablazatban levo hibasan beirt/elgepelt/ekezetet lehagyott szoveget kicserel egy olyan tablazattal amiben helyesen van.
pl: KECZKEMET -et lecsereli Kecskemét -re.

Sajnos nem 20-30 bejegyzesrol van szo hanem 92ezret kene atnezni :)
Jozsef Creative Commons License 2008.01.09 0 0 6574
1. Alt+F11 vagy Eszközök/ Makró/ Visual Basic Editor
2. Insert/Module menüpont
3. bemásolod a kódot
és már használhatod is (pl. a függvény beillesztésnél a Felhasználó kategóriában megtalálhatod)
Üdv
József
Előzmény: Törölt nick (6573)
Jozsef Creative Commons License 2008.01.09 0 0 6572
Pl. írt be a baloldali keresőbe

szam2szoveg

vagy
szám +szöveggé
Üdv
József
Előzmény: Törölt nick (6570)
QQriQ Creative Commons License 2008.01.09 0 0 6571

Saját problémámra megvan a megoldás.

 

Csomagként kell beszűrni a táblázatokat

(Hátha mást is érdekel.)

 

QQriQ Creative Commons License 2008.01.09 0 0 6569

Sziasztok,

 

A megoldandó problémám a következő.

Adott 1 excel jelentés amit minden féle céges infokat tartalmaz. Ezt a jelentést havonta küldjük a külföldi partnerünknek. A jelentés sok-sok különálló excel táblázatok adataira támaszkodik ezért jó volna ha ezeket is láthatnák a jelentés mellet.

Mailban csatolmányként nem szeretnénk küldözgetni minden alkalommal a sok sok táblát, csak a jelentést.

Ebbe a fájlba, jelentésbe kéne beágyaznom  a többi táblázatot.

Ezt meg is oldottam Objektumok beszúrásával, sőt csináltam egy egyszerű VB menü rendszert amivel könnyen lehet nyitogatni a mellékleteket.

A nagy probléma az, hogy ha a táblázat a megnyitáskor nem látja a különálló fájlokat akkor nem tudja behívni az adatokat.

A saját hálónkon tökéletesen működik a dolog, de amint kiküldöm nem megy.

Belehet úgy szúrni valahogy egy táblázatba egy másik táblázatot (sok munkalapos) hogy az megőrizze öket, úgy hogy "beépüljön" és frissítési lehetőség nélkül az előző frissítés állapotát mutassa?

 

Segitségeteket előre is köszönöm!

Minden megoldás érdekel.

 

Jozsef Creative Commons License 2008.01.09 0 0 6568
Ha mondjuk az A1 es cellában mondjuk 1300 van, milyen függvénnyel tudnám "ezerháromszáz" zá, azaz szöveg formátummá alakítani.

A topikban találsz ilyet kódot pl. tiba, de az én hozzászólásim között is.
Üdv
József
Előzmény: Törölt nick (6562)
Delila669 Creative Commons License 2008.01.09 0 0 6566

C:/Documents and Settings/Saját/Application Data/Microsoft/Excel

 

Hátha így átviszi.

Előzmény: Törölt nick (6563)
Delila669 Creative Commons License 2008.01.09 0 0 6565
Az útvonalból hogy-hogy nem, kimaradtak a -ek, pedig másoltam. Tudod, hova kell tenni.
Előzmény: Törölt nick (6563)
Delila669 Creative Commons License 2008.01.09 0 0 6564

http://www.badongo.com/file/7230242

 

Innen töltsd le az Excel.xlb-t, tedd be a C:Documents and SettingsSajátApplication DataMicrosoftExcel könyvtárba.

 

A függvény alkalmazása:

f*, a kategóriák közül a Felhasználóiban megtalálod a Váltó nevűt.

Első paramétere a cella (A1), másodikba csak akkor írj valamit, ha a normál elválasztó kötőjel (Egyezer-háromszáz) helyett valami más karaktert szeretnél alkalmazni.

 

Sajnos, nem én írtam a függvényt, csak ollóztam. A szerző Krizsák László.

Delila669 Creative Commons License 2008.01.09 0 0 6561

C2-be (ez adja a munkahelyen eltöltött időt):

=B2-A2

 

D2-be rafináltabb képlet kell (vagy a 8 óránál kevesebb időt, vagy 8-tól 8:30-ig 8 órát ad, vagy 8:30 fölött a teljes bent töltött időt adja):

=HA(VAGY(ÉS(C2>IDŐ(8;0;0);C2<IDŐ(8;31;0));C2>=IDŐ(8;30;0));IDŐ(8;0;0);C2)

 

E2-be (a túlórát mutatja 8:30 fölött):

=HA(B2-A2>IDŐ(8;30;0);B2-A2-IDŐ(8;0;0);"")

 

 

 

 

Előzmény: VANESSZA 1 (6556)
Delila669 Creative Commons License 2008.01.09 0 0 6560
"A" oszlopban a belépés, "B"-ben a kilépés.

 

C2-be: =ha(b2-a2>idő(8;30;0);idő(8;0;0);b2-a2)
D2-be: =ha(b2-a2>idő(8;30;0);b2-a2-idő(8;0;0);"")

 

Mindegyik oszlop cellaformátuma idő.

 

Valószínű, hogy az ebédidőt is le kell vonni a teljes időből.

Előzmény: VANESSZA 1 (6554)
kiwancsi Creative Commons License 2008.01.08 0 0 6559

Szuper! Köszönöm!

 

Tudom hogy ezeket ki lehetne szaszerolni, meg help is van..., de annyira nincs időm! Köszönöm hogy segítesz!

Előzmény: Jozsef (6553)
Törölt nick Creative Commons License 2008.01.08 0 0 6558
szerintem erre lehet használni az MROUND függvényt is.
pl A1-be: MROUND(B1;1/24)
(Ebben a formában féltől már felkerekít)
Előzmény: VANESSZA 1 (6556)
toccata Creative Commons License 2008.01.08 0 0 6557
Ja és a cellák formázhatóságára is szükség van. Természetesen csak a nem védett cellák esetében.
Előzmény: toccata (6536)
VANESSZA 1 Creative Commons License 2008.01.08 0 0 6556
Konkrét függvényt nem tudsz mondani? Nem vagyok nagy excel mágus..
Előzmény: TillZ (6555)
TillZ Creative Commons License 2008.01.08 0 0 6555
Létezik egy PERC függvény, ami az időtartam perc részét adja vissza.
HA függvénnyel összekombinálva tudod az ÓRA értékét megnövelni 1-el.
Előzmény: VANESSZA 1 (6554)
VANESSZA 1 Creative Commons License 2008.01.08 0 0 6554
Tudna segíteni valaki?
Munkaidő számítás.
Nálunk csak azt számolják túlórának ha 30 percet
meghaladja a túlórád. Magyarul ha 8:30 felett van a munkaidőd akkor
van fél órád túlóra.Ha nem éred el a 31 percet, akkor nincs (15 percet
nem számolnak).
Addig eljutottam hogy az első oszlop az érkezés idejét tartalmazza
(pl. 7:00 ).
A második oszlop a távozás idejét (pl: 16:00)
És a harmadik oszlop a ledolgozott órák számát ( pl. 8:40 )erre meg is
van a képlet.
A harmadik oszlopba kellene nekem az hogy van-e túlórám , ha igen
akkor mennyi az összes munkaidő,tehát ha 8:30 alatt dolgoztam akkor
8:00 legyen vagy az adott óra, ha felette akkor a túlórával
összesitett idő.
A negyedik oszlopba kellene csak a túlóra ideje.

Ezeket a képletek nem tudom sehogy összehozni.Segítenétek?

Köszi
Jozsef Creative Commons License 2008.01.08 0 0 6553
Most azt próbálnám kitalálni hogyan lehetne az Exceltábla nyitásakor automatikusan frissíteni. Gondolom makrot kellene csinálni, de még nem csináltam. :-))))

Ha nem akarsz makrózni:
Amikor eljutsz eddig lépéshez. kattints a Tulajdonságok gombra





A Frissítési szabályoknál pedig beállíthatod, hogy hány percenként ill. fájl megnyitáskor frissüljön az eredmény
Előzmény: kiwancsi (6552)
kiwancsi Creative Commons License 2008.01.08 0 0 6552

Szia József! :-)

 

Ma Te vagy a sztár.

 

Én is köszönöm!

A legegyszerűbb felépítésben már működik.

 

Most azt próbálnám kitalálni hogyan lehetne az Exceltábla nyitásakor automatikusan frissíteni. Gondolom makrot kellene csinálni, de még nem csináltam. :-))))

Előzmény: Jozsef (6542)
Törölt nick Creative Commons License 2008.01.08 0 0 6551

Szia József!

 

Köszönöm szépen, pompás!

 

Üdv: boraka

Előzmény: Jozsef (6549)
neofrix baszmacs Creative Commons License 2008.01.08 0 0 6550
Hú de jó, működik! Hálásan fogok rád gondolni, ha ezután nem kell lemásznom a 6100. sorba, ahol eddig a listák kezdődtek, helyette csak egy katt a másik munkalapra. ;-)
Kösz!
Előzmény: kiwancsi (6548)
Jozsef Creative Commons License 2008.01.08 0 0 6549
Szia!
Azt szeretném megkérdezni, hogy makró futása közben az aktuális felhasználónevet le lehet-e valahogy kérdezni?

Excel usernév :

Application.Username

Windows usernév pl.:

Declare Function apiGetUserName Lib "advapi32.dll" _
Alias "GetUserNameA" (ByVal lpBuffer As String, _
nSize As Long) As Long



Function GetUserName() As String

Application.Volatile
Dim sBuff As String * 25
Dim lBuffLen As Long

lBuffLen = 25
apiGetUserName sBuff, lBuffLen
GetUserName = Left(sBuff, lBuffLen - 1)

End Function

Sőt fel lehet használni a windows login jelszóellenőrzést is, pl. kritikus funkció indításakor.
Üdv
József
Előzmény: Törölt nick (6546)
kiwancsi Creative Commons License 2008.01.08 0 0 6548

 

Megmondom! :-)

 

Ahol a másik munkalapon az adatok vannak amik a legördülőben legyenek azokat a celláket kijelölöd és nevet adsz nekik: A bal fölső sarokban az fx -től ballra lévő ablakba beírod pl: "legordulo" . Ezután átmész arra a munkalapra ahol a legördülőből akarod venni a cellatartalmat, és úgy jársz el mint eddig, és azt írod be "=legordulo" aposztróf nélkül. Meg fogja találni.

Előzmény: neofrix baszmacs (6547)
neofrix baszmacs Creative Commons License 2008.01.08 0 0 6547

>Tudok legördülőmenüt csinálni az Excel celláiból. Akkor is ha másik munkafüzeten van.

De jó neked! Én már akkor is megfekszem, ha a lista másik munkalapon van: az Érvényesítés ablak Forrás mezejében nem enged a másik munkalapra kattogni. Megpróbáltam meghamisítani, és kézzel beírni elé, hogy =+Munka2!, de nem tetszett neki, azt mondta, hibás a képlet.

Megmondanád, hogy csinálod?
Előzmény: kiwancsi (6537)
Törölt nick Creative Commons License 2008.01.08 0 0 6546

Sziasztok!

 

Azt szeretném megkérdezni, hogy makró futása közben az aktuális felhasználónevet le lehet-e valahogy kérdezni?

 

Előre is köszönöm.

kiwancsi Creative Commons License 2008.01.07 0 0 6545
Neked is köszönöm, hogy próbáltál segíteni.
Előzmény: Delila669 (6541)
kiwancsi Creative Commons License 2008.01.07 0 0 6544

Köszönöm, ilyesmire gondoltam.

Kipróbálom.

Előzmény: Jozsef (6542)
toccata Creative Commons License 2008.01.07 0 0 6543
József!

6483-ra van valami megoldásod?
Előzmény: Jozsef (6542)
Jozsef Creative Commons License 2008.01.07 0 0 6542
Azt szeretném ha a mondjuk a "pince" egy adatbázis(pl SQL) egy mezője lenne melynek tartalmai a (kazánház,mosókonyha,garázs, műhely,stb.) vagyis ne legyen bedrótozva az Excel táblába valahol, s ílymódon ne kelljen követnem a változásait.

Ha (viszonylag) keveset akarsz makrózni, akkor a legegyszerűbb dolog, hogy csinálsz egy adatbázis lekérdezést a szükséges mezőkre (Adatok/ Külső Adatok importálása/ Új adatbázis lekérdezés vagy Adatok beolvasása).
Aztán a lekérdezés eredménytartományát adod meg a érvényesítési lista tartalmának, vagy a vezérlő forrásának.
Kérdés még, hogy milyen gyakran kell a lekérdezést újra lefuttatni, de ez már be tudod makróba építeni.
Üdv
József
Előzmény: kiwancsi (6540)
Delila669 Creative Commons License 2008.01.07 0 0 6541

Itt most mebuktam, mert csak az Excel konyítok úgy-ahogy.

Meg kellene próbálnod makrórögzítéssel a másik file megnyitását, és a szükséges adat bemásolását.

Róka-fogta csuka...

Biztosan akad valaki, aki mindkettőt vágja.

Előzmény: kiwancsi (6540)
kiwancsi Creative Commons License 2008.01.06 0 0 6540

 

Igen, modjuk. És ez rendben is van. Meg tudom csinálni bedrótozva egy munkafüzetbe.

 

Azt szeretném ha a mondjuk a "pince" egy adatbázis(pl SQL) egy mezője lenne melynek tartalmai a (kazánház,mosókonyha,garázs, műhely,stb.) vagyis ne legyen bedrótozva az Excel táblába valahol, s ílymódon ne kelljen követnem a változásait.

El tudok képzelni két megoldást, de lehet hogy az Excel nem engedi és egy 3. létezik.

Az egyik lenne hogy valahogyan megadhatom az adatbázist ODBC-n keresztül az Excelnek és közvetlen az adatbázismező tartalom jelenik meg a legördülő menüben. Elképzelhető hogy ez lassú, különösen ha túl sok rekordja van a táblának(adatbázisnak).

A másik az lehetne hogy az Excel tábla kinyitásakor eltölt egy kis időt azzal hogy bemásolja egy munkalapra ezeket az adatokat az adatbázisból, egy lekérdezés lefutna, nem tudom hogyan(ez a problémám), és onnan sima lenne, bár le kellene valahogy programozni a legördülő menü beállításait is, minden alkalommal.

Esetleg erre való a makrokészítés? Bocsánat de nem volt eddig szükségem az Excel ilyen mélységű megismerésére

Nem tudom mit tud az Excel sajnos, de ragaszkodnom kell hozzá. VFP-ben pl. már megcsináltam volna.

 

Előzmény: Delila669 (6539)
Delila669 Creative Commons License 2008.01.06 0 0 6539

Mellényúltam, a félkész válasz elment.

Tehát: a második legördülő bemenete az A14:A17 tartomány, ami az első legördülő csatolt értékétől, az A12 cella tartalmától függ.

Előzmény: Delila669 (6538)
Delila669 Creative Commons License 2008.01.06 0 0 6538

 

Ilyesmire gondoltál?

Az A14 képlete látszik a szerkesztő sorban.

A

Előzmény: kiwancsi (6537)
kiwancsi Creative Commons License 2008.01.06 0 0 6537

Amint leírtam ez megy. Tudok legördülőmenüt csinálni az Excel celláiból. Akkor is ha másik munkafüzeten van. Azt nem tudom hogyan lehet ott megadni hogy egy adatbázis egyik mezőjének a tartalmai adják a legördülő menüt.

Vagy nem értem amit ideírtál.

Előzmény: Delila669 (6535)
toccata Creative Commons License 2008.01.05 0 0 6536
Most már csak annyi a probléma, hogy bekapcsolt védelem esetén is kellene tudni kommentet írni (Edit objects) a cellákhoz és az AutoFilternek is működnie kellene.

Próbálgattam módosítani az alábbi sort:
ThisWorkbook.Sheets(lap).Protect pass, DrawingObjects:=True, Contents:=True, Scenarios:=True

így:
ThisWorkbook.Sheets(lap).Protect pass, DrawingObjects:=True, Contents:=True, Scenarios:=True, AutoFilter:=True

De nem tetszik neki. Hibát jelez.
Mi a módja?
Előzmény: toccata (6533)
Delila669 Creative Commons License 2008.01.05 0 0 6535
Adatok/Érvényesítés/Megengedve legördülőből Lista
Előzmény: kiwancsi (6534)
kiwancsi Creative Commons License 2008.01.04 0 0 6534

 

Sziasztok!

 

Tudna-e valaki segíteni?

Egy oszlop mezőinek a tartalma csak meghatározott elemek valamelyike lehet.

Legördülő menü másik oszlopból, másik munkafüzetből megy.

A feladatom az volna hogy egy adatbázis/tábla egyik mezőjét tudjam megadni itt.

Vagyis egy adott oszlop csak egy adatbázis egyik mezőjének valamely értékével legyen kitölthető.

 

Hogyan adhatom ezt meg?

 

Köszönöm.

Ha valahol volt már erről szó, természetesen azt is megköszönöm ha csak így jelzitek hogy hol találom kb.

toccata Creative Commons License 2008.01.04 0 0 6533
Köszönet.
Előzmény: stromba (6532)
stromba Creative Commons License 2008.01.03 0 0 6532
..
Előzmény: stromba (6531)
stromba Creative Commons License 2008.01.03 0 0 6531

 

Az ActiveWorkbook.Save és az ActiveWorkbook.Close sorok nem kellenek.

 

-> VBA Editor

-> Fájl kiválasztása

-> Microsoft Excel objects  / ThisWorkbook kiválasztása

-> majd a jobb oldalon a legördülő listákból a 'Workbook' és a 'BeforeSave' kiválasztása

-> makró beszúrás

 

 

Előzmény: toccata (6530)
toccata Creative Commons License 2008.01.03 0 0 6530
No és azt hol, hogyan tudom megtenni?
Makrókkal még nem igazán foglalkoztam. :(
Előzmény: stromba (6529)
stromba Creative Commons License 2008.01.03 0 0 6529

nem a before close hanem a before save eseményhez kell hozzárendelni a makrót.

Előzmény: toccata (6528)
toccata Creative Commons License 2008.01.03 0 0 6528
Köszi mindkettőtöknek. Rendben működik.
A gondom csak annyi, hogy nem külön kellene lefuttatni, hanem minden mentés alkalmaával (amikor a felhasználó vagy a mentés ikonra kattint, vagy bezáráskor választja a mentés opciót).
Előzmény: stromba (6527)
stromba Creative Commons License 2008.01.02 0 0 6527

gondolom a jelszó is kellene bele.

 

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim ucso As Double
Dim pass As String
Dim lap As Double

Application.ScreenUpdating = False
ucso = ThisWorkbook.Sheets.Count
pass = "jelszo"
  
    For lap = 1 To ucso
                  
        ThisWorkbook.Sheets(lap).Protect pass, DrawingObjects:=True, _

Contents:=True, Scenarios:=True
          
    Next lap
ActiveWorkbook.Save
ActiveWorkbook.Close

End Sub

Előzmény: Delila669 (6526)
Delila669 Creative Commons License 2008.01.02 0 0 6526

Kicsit módosítottam, így be is zárja:

 

Sub auto_close()
    ucso = ThisWorkbook.Sheets.Count
    Sheets("Munka1").Select
    For lap = 1 To ucso
        ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
        If lap <> ucso Then
            ActiveSheet.Next.Select
        End If
    Next
    Sheets("Munka1").Select
    ActiveWorkbook.Save
    ActiveWorkbook.Close
End Sub

Előzmény: toccata (6524)
Delila669 Creative Commons License 2008.01.02 0 0 6525
Az alábbi makrót vidd be. Két helyen a Sheets("Munka1").Select -ben javítsd át a lap nevét a füzetedben lévő első lap nevére.

Sub auto_close()
ucso = ThisWorkbook.Sheets.Count
Sheets("Munka1").Select
For lap = 1 To ucso
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
If lap = ucso Then
Exit Sub
Else
ActiveSheet.Next.Select
End If
Next
Sheets("Munka1").Select
ActiveWorkbook.Save
End Sub
Előzmény: toccata (6524)
toccata Creative Commons License 2008.01.02 0 0 6524
B.Ú.É.K!

Aztán egy kérés.
Szükségem lenne egy makróra, ami minden mentés előtt lefut és bekapcsolja minden munkalapon a védelmet.

Ugyanis kedves kollégák időnként kikapcsolják (már akik ismerik a jelszót és kell nekik), aztán meg elfelejtik visszakapcsolni. Így viszont más kollégák tudnak olyan elkutyulásokat végrehajtani, amit utána győzök kibogozni.

Köszi előre is.
byszka11 Creative Commons License 2007.12.28 0 0 6523
Nem excel probléma. Ez egy figyelmeztetés, hogy nem "aláírt" vezérlőt próbálok megnyitni. Kerestem Google-ban is, de reg-et kellene hozzá módosítani (hát annyit azért nem ér). De találtam egy másik komponenst ami Microsoft aláírással rendelkezik, így nem kérdez semmit. Szerintem így egyszerübb volt :). Azért köszönöm a segítséget.
Előzmény: stromba (6522)
stromba Creative Commons License 2007.12.28 0 0 6522
Ez nem Xcel problem hanem valami Microsoft biztonsági beállítás. Google?
Előzmény: byszka11 (6521)
byszka11 Creative Commons License 2007.12.28 0 0 6521
Szia

Köszönöm szépen müxik.
Időközben újjab problémába ütköztem, ami nem is probléma csak... Tehát felraktam egy Date TimePick-et (dátumválasztó), de sajna így a fájl indulásakor a következő üzenetet kapom: "This application is about to initialize ActiveX controls that might be unsafe. If you trust the source of this file, select OK and the controls will be initialized using your current workspace settings". Ezt a figyelmeztetést valahogy ki lehet kapcsolni?

Előre is köszönöm.
Előzmény: stromba (6520)
stromba Creative Commons License 2007.12.27 0 0 6520
Private Sub Workbook_Open()
 
Dim munkaF As Workbook
On Error Resume Next
Set munkaF = Workbooks("start.xls")
  If munkaF Is Nothing Then 'nincs nyitve
       Workbooks.Open Filename:="C:\start.xls"
       Set munkaF = Nothing
       On Error GoTo 0
  Else 'ha nyitva van
       Cells(1, 1) = 0
     Set munkaF = Nothing
     On Error GoTo 0
 
End Sub
Előzmény: byszka11 (6519)
byszka11 Creative Commons License 2007.12.27 0 0 6519
Hát sajna még így is meg akarja nyitni.
Előzmény: stromba (6518)
stromba Creative Commons License 2007.12.27 0 0 6518
Application.Displayalerts = False ?
Előzmény: byszka11 (6516)
Delila669 Creative Commons License 2007.12.27 0 0 6517
A start.xls-ben kell lennie egy auto_open nevű makrónak, ez indul a fájl betöltésekor automatikusan. Ebbe kell beírni az inputot, mégpedig a megy.xls indítása elé.
Előzmény: byszka11 (6516)
byszka11 Creative Commons License 2007.12.27 0 0 6516
Szia


Ez jó is lenne, de az a baj, hogy a start az automatikusan dolgozik és nyitja meg a megy-et. Nem csak én fogom ezt használni és ugye mivel ott lehet igenre és nemre kattintani, így tuti hogy valaki a másikra kattint és nem a kellő műveletet csinálja, akkor meg minden összekavarodik.

Azért köszönöm
Előzmény: Delila669 (6515)
Delila669 Creative Commons License 2007.12.27 0 0 6515

Helló!

 

A startba beteszel egy inputboxot, ami rákérdez, hogy kell-e futtatnia a megy-et.

Egy IF-fel megvizsgálod az input értékét, és annak megfelelően vagy futtatod a második makrót, vagy exit sub.

Előzmény: byszka11 (6514)
byszka11 Creative Commons License 2007.12.27 0 0 6514
Sziasztok

Ezt olvastam ezen témával kapcsolatban (még nem volt alkalmam kipróbálni, hogy működik-e): Átnevezed .zip -re majd kicsomagolod és kész az .xls és mindegyik Office 2007 formátummal.
Mellékesen különben ha már itt vagyok kérdeznék is. Van egy munkafüzet megnyitásakor automatikusan induló makró. Néha viszont ennek nem kéne lefutnia, vagyis megoldható ennek megállítása? Kis magyarázat hogy érthetőbb legyen: adott egy start.xls és egy megy.xls. Elindítom a start.xls-t ami megnyitja a megy.xls-t majd bezárja magát, de elötte beírja az A1-be hogy 1. Amikor bezárom a megy.xls-t akkor megnyitja a start.xls-t (itt a hiba mert megpróbálja megint megnyitni a már megnyitott fájlt) az A1-be pedig beír 0-t majd mindent bezár. Remélem érthető.

Köszönöm
Előzmény: Jozsef (6511)
Cicó_ Creative Commons License 2007.12.28 0 0 6513

SK

köszi, sikerült megnyitni egy jobb gépen

a formázás sajnos elveszett, de legalább az adatokat átmenekítettem :)

Cicó_

Előzmény: Sánta Kutya (SK) (6504)
v63 047 Creative Commons License 2007.12.24 0 0 6512
Köszönöm! Elolvastam! Lefogom tölteni!

Sánta Kutya (SK) is köszönöm a válaszokat!
Előzmény: Jozsef (6511)
Jozsef Creative Commons License 2007.12.24 0 0 6511
Szeretnék segítséget kérni. Kaptam nem régen egy .xlsx formátumú fáljt amit sajnos nem
Excel 2007 formátuma.
Itt találsz további infót, hogyan tudod megnézni: http://support.microsoft.com/kb/925180/hu
Innen pedig mindent letölthetsz:
http://www.microsoft.com/downloads/details.aspx?familyid=c8378bf4-996c-4569-b547-75edbd03aaf0&displaylang=en
Üdv
József
Előzmény: v63 047 (6507)
Sánta Kutya (SK) Creative Commons License 2007.12.24 0 0 6510
Annyit értek, hogy ez a MS új, most bevezetés alatt álló formátuma, XML és ZIP keveréke, és a MS ígérgeti, hogy majd el tudod olvasni. :-) Ha jól értem a második táblázatot, talán Office 2007-tel készülhetett, tehát keress ilyet vagy várj egy évet, vagy kérd újra rendes formátumban. Valaki villogni akart, hogy neki a legújabb kütyüje van...
Előzmény: v63 047 (6509)
v63 047 Creative Commons License 2007.12.24 0 0 6509
Köszi, de sajnos én nem nagyon tudok angolul. Itt mire menjek?
Előzmény: Sánta Kutya (SK) (6508)
Sánta Kutya (SK) Creative Commons License 2007.12.24 0 0 6508
Beírtam a Google-ba, hogy file extensions xlsx, és rengeteg találta van, első helyen pl. http://filext.com/file-extension/XLSX
Előzmény: v63 047 (6507)
v63 047 Creative Commons License 2007.12.24 0 0 6507
Jó reggelt!

Szeretnék segítséget kérni. Kaptam nem régen egy .xlsx formátumú fáljt amit sajnos nem bírok megnyitni, még a 2003-as Excel.-el sem. Kérdésem. Ezt a kiterjesztésű fáljt mivel tudom megnyitni? (Ha lehet, jó lenne ha olyan lenne ami, ingyenes, és egyszerű felrakni, de ha nem nagyon van olyan. jöhet bármilyen progi neve amivel megtudom nyitni) Köszönöm!

v63 047
Cicó_ Creative Commons License 2007.12.22 0 0 6506

sajnos nem sikerült :(

a másik asztali és a laptop is elég öregecske, majd

holnap a szomszédban talán...

Cicó_

Előzmény: Cicó_ (6505)
Cicó_ Creative Commons License 2007.12.22 0 0 6505

köszönöm szépen a gyors választ

 

megpróbálom, bár elég őskövületek a gépeink,

de hátha... :)

Cicó_

Előzmény: Sánta Kutya (SK) (6504)
Sánta Kutya (SK) Creative Commons License 2007.12.22 0 0 6504
Megpróbálnám pendrive-ra tenni és átvinni valami erősebb számítógépre, hátha memóriaproblémás. Aztán gyorsan szétdarabolni.
Előzmény: Cicó_ (6503)
Cicó_ Creative Commons License 2007.12.22 0 0 6503

Sziasztok!

 

Segitséget szeretnék kérni

 

Excelbe van egy munkafüzetem,  kb 13 lap van benne.

A fájl mérete 1.028.608.

Az utolsó változtatás óta sajnos nem tudom megnyitni

 

"Túl sok különböző cellaformátum szerepel!" - hibaüzenetet ír ki.

 

Van valami praktika, hogy hozzáférjek az adatokhoz?

Vagy végleg elvesztek?

 

előre is köszi

Cicó_

Törölt nick Creative Commons License 2007.12.22 0 0 6502

Áldott békés karácsonyi ünnepeket és egészségben, örömökben, sikerekben gazdag boldog új esztendőt kívánok!

Delila669 Creative Commons License 2007.12.19 0 0 6501
Szívesen.
Előzmény: maagnes (6500)
maagnes Creative Commons License 2007.12.19 0 0 6500
Ezeregy köszönet Megmentőmnek! :) :) :) Működik! :) :) :)
Előzmény: Delila669 (6499)
Delila669 Creative Commons License 2007.12.19 0 0 6499

Kihagytam a lényeget.

Helyesen:

 

=A1&B1&"0"&C1

Előzmény: maagnes (6497)
Delila669 Creative Commons License 2007.12.19 0 0 6498

Még az Összefűz függvény sem kell hozzá, ennyi az egész:

 

=A1&B1&C1 

Előzmény: maagnes (6497)
maagnes Creative Commons License 2007.12.19 0 0 6497

Sziasztok!

 

Meg tudná mondani valaki, hogy hogyan tudnék ÖSSZEFŰZ függvénnyel összerakni olyan számokat tartalmazó cellákat, amikben egyéni számformátum is van? Úgy néz ki, hogy össze kellene fűznöm három oszlopot: 11  22  01 -> ebből 112201-nek kellene lenni, de 11221 lesz belőle, mert a harmadik oszlopba 1-et írtak és 00 egyéni számformátumot adtak neki.

 

Előre is köszi!

ismeros Creative Commons License 2007.12.17 0 0 6496
Ja természetesen minden lehetséges frissítés fennt van!
Előzmény: ismeros (6495)
ismeros Creative Commons License 2007.12.17 0 0 6495
Üdv Mindenki!
A problémám amivel segítséget szeretnék kérni a következő:
Office 2007 Pro-t használunk a cégnél és most következett el a pillanat amikor mindenkinél le kell majd cserélni a 2003 SBS-t erre. Na most a szerveren található egy 2003-ban létrehozott *.xls fájl, amit egy ember kezel/módosít és a többiek pedig ezt a fájlt olvasásra megnyitva tekinthettek bele a tartalmába, majd a fájlfrissítés gombra kattintva frissítették az aktuális változatra. Egészen eddig. Elkezdtem ugyanis feltörpölni eddig 3 gépre a 2007-et, de a fájlfrissítés gomb itt nem csinál semmit.Kipróbáltam már azt is, hogy egy 2007-ben hoztam létre egy xls-t és ugyanúgy csak olvasásra engedtem megnyitni egy másik 2007-es excellel, de ebben az esetben sem frissít.Kipróbáltam már az xlsx (ami ugye a 2007 sajátja)vagy mi a franc kiterjesztéssel is, de semmi.
Van valakinek ötlete mi lehet e probléma megoldása?
Az idegen kezelőfelület miatt is elég nehéz hozzászoktatni a népet a 2007-hez, viszont ez végleg betenné a kaput!
Előre is köszi!
Törölt nick Creative Commons License 2007.12.13 0 0 6494
nekem tényleg nem ment simán a telepítés, ki kellett csomizni az exe-t és csak utána volt hajlandó rámenni 2003 officera az elindított .msi
Amúgy nem tudom mire lehet használni (gondolom vba helyett volt anno) de érdekes - tetszik.
Előzmény: Törölt nick (6492)
Törölt nick Creative Commons License 2007.12.13 0 0 6493
jaja közben megvan köszi
Előzmény: Törölt nick (6492)
Törölt nick Creative Commons License 2007.12.13 0 0 6492
Én is 2003-ast használok, és simán telepítettem...
Létrehozott egy Office10 mappát, és abba tette a Xlmacr8.hlp fájlt.

Amikor a FUNC.XLS-ben duplakattintasz egy függvényre, és nem találja a vonatkozó súgót, mondd neki, hogy majd magad megkeresed. Aztán tallózz ebbe a mappába, és nyisd meg a Xlmacr8.hlp fájlt.
Maximum annyi hiba lehet, hogy a 2002-es kiadás óta kicsit változott a függvények listája, és ezért a help nem teljesen oké.
Előzmény: Törölt nick (6490)
Törölt nick Creative Commons License 2007.12.13 0 0 6491
Ez egy .exe file, de a winrar kicsomagolja belőle az .msi telepítőfile-t, és ezt elindítva már nem reklamál, hogy nincs Office2000 a gépen.
Csak makrólapon lehet használni ezeket. Jó dolog, de ma már ott van a VBA erre - és legalább tudom hogy ilyen is van.
Köszönöm!
Előzmény: Törölt nick (6488)
Törölt nick Creative Commons License 2007.12.13 0 0 6490
2003-as Office-t használok, így nem tudom feltelepíteni. Ellenben köszönöm a linkeket, jól ki tudok indulni ezekből. Úgy tűnik, ma már nem nagyon használják ezeket engem viszont érdekel. Köszi szépen tényleg.
Előzmény: Törölt nick (6487)
Törölt nick Creative Commons License 2007.12.13 0 0 6489
C:\Program Files\Microsoft Office\Office10\1038
Előzmény: Törölt nick (6488)
Törölt nick Creative Commons License 2007.12.13 0 0 6488
Ja, és egyébként ha a súgót telepíteni tudtad, keresd a FUNCS.XLS nevű fájlt a
C:Program FilesMicrosoft OfficeOffice101038
(vagy hasonló) könyvtárban, és nyisd meg. Ott vannak a makrófüggvények, és dupla kattra jön a súgó. (Elvileg. Nem tudtam kipróbálni még.)
Előzmény: Törölt nick (6487)
Törölt nick Creative Commons License 2007.12.13 0 0 6487
A Micro$oft honlapról letölthető egy súgó, amiben egész részletesen benne van a GET.CELL (magyarul: CELLÁT.VESZ) függvény leírása. Meg a többi Excel4 makrófüggvényé is.

Letöltés
Előzmény: Törölt nick (6482)
szenyor Lopez Creative Commons License 2007.12.13 0 0 6486
A4-be: =közép(a1;a2;a3)
Előzmény: lozsit (6485)
lozsit Creative Commons License 2007.12.13 0 0 6485

Hello,

Hogy lehet a következőt megoldani?

A1 cellában van kb. 1000karakternyi szöveg.

A2-be megadom, hogy hányadik karaktertől, A3ba megadom, hogy hány karaktert...

A4be kiírja a szövegdarabot.

 

Pl:

A1: 1234567890ABCDEFG....

A2: 9

A3: 4

 

A4: 90AB

 

Thx!

Törölt nick Creative Commons License 2007.12.13 0 0 6484

Public Function KEREK2(mit, mire)
KEREK2 = Round((CDate(mit) / CDate(mire)), 0) * CDate(mire)
End Function
Előzmény: macmelon (6483)
macmelon Creative Commons License 2007.12.12 0 0 6483
Bocs, mellénéztem.
--
Más: Írtam egy nagyon egyszerű saját függvényt, aminek az a lényege, hogy megadott értékre kerekít. Nekem pl. arra kellett, hogy időket 15 mp-es egységekre kerekítsen. Pl. 0:22:03 -> 0:22:00, 0:27:12 -> 0:27:15; 0:33:41 -> 0:33:45 legyen és így tovább.

A függvény a kerekítendő értéket és a kerekítés egységét kéri be. Frankón működik akkor is ha számokat tartalamzó vagy időt tartalmazú cellát adok neki bementként. Viszont nem tud mit kezdeni azzal, ha nem cellehivatkozást, hanem azt írom be neki, hogy "0:00:15"

Így szoktam csinálni, amíg nem volt saját függvényem (A1-ben van a kerekítendő érték):
=KEREK(A1/"0:00:15";0)*"0:00:15")

És így néz ki a fgv, ami nem egészen működik:
Public Function KEREK2(mit, mire)
KEREK2 = Round((mit / mire), 0) * mire
End Function

Pl. A1 = 0:22:03 és B1 = 0:00:15 esetén =KEREK2(A1;B1) jól működik, viszont pl. =KEREK2(A1;"0:00:15") már nem, #ÉRTÉKET ad vissza.

Próbálkoztam a változók típusával (eredménytelenül, *1-gyel, hátha, még azzal is, hogy IsDate-tel külön lekezelem (felismerte, hogy Date, de nem jutottam tovább). Egyébként is az lenne a szép, ha nem kéne a fgv.-t minden típusra külön megírni.

Van ötletetek?
Előzmény: Törölt nick (6480)
Törölt nick Creative Commons License 2007.12.12 0 0 6482
http://www.mrexcel.com/archive2/18800/21312.htm

nini, egy angol leírás de használta valaki vmire már ezt a Get.Cell-t?
Előzmény: Törölt nick (6481)
Törölt nick Creative Commons License 2007.12.12 0 0 6481
Tehát, mi ez a Get.Cell.
Azt olvasom hogy a VBA elődje, egy makrónyelv meg ilyenek, de hog yis kell ezt használni.
Nem találtam erről magyar leírást sehol egyelőre :(
angolt még nem kerestem, de az se nagyon van ahogy elnézem...
Előzmény: Törölt nick (6480)
Törölt nick Creative Commons License 2007.12.12 0 0 6480
Nem ezt kérdeztem, hanem amit a 6423-ban írtál (link)
Előzmény: macmelon (6479)
macmelon Creative Commons License 2007.12.12 0 0 6479
Nem, de a J-Walk.com-on ezt találtam:

Can I use Excel’s built-in worksheet functions in my VBA code?

In most cases, yes. Excel's worksheet functions are accessed via the WorksheetFunction method of the Application object. For example, you could access the POWER worksheet functions with a statement such as the following:

Ans = Application.WorksheetFunction.Power(5, 3)
This example raises 5 to the third power.

Generally, if VBA includes an equivalent function, you cannot use Excel’s worksheet version. For example, because VBA has a function to compute square roots (Sqr) you cannot use the SQRT worksheet function in your VBA code.

Előzmény: Törölt nick (6478)
Törölt nick Creative Commons License 2007.12.12 0 0 6478
kipróbálta ezt esetleg valaki?
Előzmény: macmelon (6476)
Törölt nick Creative Commons License 2007.12.12 0 0 6477
WorksheetFunction.Max(függv.paraméterek vesszővel elválasztva)
Application.WorksheetFunction.Subtotal(függv.paraméterek vesszővel elválasztva)

Nyilván kezelni kell a hibát is, ha pl egy fkeres vagy hol.van nem talál stb...

Ha hülyeséget írok javítson ki bárki nyugodtan
Előzmény: macmelon (6475)
macmelon Creative Commons License 2007.12.12 0 0 6476
Egyébként itt található egy más megoldás (én maradtam az eredetinél):
http://j-walk.com/ss/excel/usertips/tip045.htm
Előzmény: stromba (6472)
macmelon Creative Commons License 2007.12.11 0 0 6475
Megtetszett a függvényírás. Ezzel kapcsolatban az a kérdésem, hogy egy saját függvényben hogyan tudom a beépítetteket használni.

Mondjuk egy példa (nyilván itt sok értelme nincs, csak valami egyszerüt akartam kitalálni):
Gyakran kell egy szám négyzetgyöke kerekítve. És mondjuk ezt a függvényt szoktam használni =KEREK(GYÖK(A1);1), de szeretnék egy saját függvényt, ami ue.-t csinálja, úgy hogy csak ennyit kell hozzá megadni: =KEREKITETTGYÖK(A1;1)

Hogyan tudom ezt VBA-val megcsinálni?
macmelon Creative Commons License 2007.12.11 0 0 6474
A keplet név nem jó a függyvények (gondolom foglalt), de keplet_e néven már kiválóan működik!
Előzmény: stromba (6472)
macmelon Creative Commons License 2007.12.10 0 0 6473
Azt hiszem, hogy megírom életem első saját fügvényét. Na jó úgy saját, hogy másolom a tiédet, de azért mégis! Köszi! :)
Előzmény: stromba (6472)
stromba Creative Commons License 2007.12.10 0 0 6472

Public Function keplet(tart As Range)
keplet = tart.HasFormula
End Function

Előzmény: macmelon (6471)
macmelon Creative Commons License 2007.12.10 0 0 6471
Köszi az előzőt!
Új kérdés:
Van-e olyan fgv. amivel azt kérdezhetem le egy celláról, hogy képlet van-e benne, vagy sem.
Azaz meg akarom különbözetni pl. azt a két cellát, hogy 2 és =2.
macmelon Creative Commons License 2007.12.10 0 0 6470
Érdekes, nekem rákattintva tökéletesek a képek! Köszi a függvényt, ez igen jó lesz nekem!
Előzmény: Delila669 (6468)
Delila669 Creative Commons License 2007.12.10 0 0 6469

Lapfülhöz:

 

Sub Worksheet_Change(ByVal Target As Excel.Range)
    If (Target.Column = 2) Then
        rendez
    End If
End Sub

Másik helyre:

 

Sub rendez()
    Columns("A:B").Select
    Selection.Copy
    Sheets("Munka2").Select
    Range("A1").Select
    ActiveSheet.Paste
    Range("B2").Select
    Selection.Sort Key1:=Range("B2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    Sheets("Munka1").Select
    usor = ActiveSheet.UsedRange.Rows.Count
    Cells(usor + 1, 1).Select
End Sub

Remélem, most már nincs félreértés.

Előzmény: macmelon (6466)
Delila669 Creative Commons License 2007.12.10 0 0 6468

A képekből éppen semmi sem látszik, felnagyítva olvashatatlanok lesznek.

 

A keresett függvény: =KICSI(tartomány;n), ahol az n-edik legkisebb értéket keresed. Ellentéte a Nagy.

Előzmény: macmelon (6467)
macmelon Creative Commons License 2007.12.10 0 0 6467
Egyébként nincs olyan fügvény, amivel egy halmaz valahanyadik legkisebb (legnagyobb) elemét tudom megkapni? Tehát nem a legkisebbet, hanem mondjuk az 5. legkisebbet.
Előzmény: macmelon (6466)
macmelon Creative Commons License 2007.12.10 0 0 6466
És természetesen ha mondjuk B2-t átírom "f"-re, akkor a Munka2 is ez lesz:
r n
--------
3 b
2 d
1 f

És így tovább.
Előzmény: macmelon (6465)
macmelon Creative Commons License 2007.12.10 0 0 6465
Köszi! Sajnos egész mást csinál, mint szeretném. Ezt kéne csinálnia:
Ha van ez első képen lévő munkalap, akkor a második munkalapnak a második képen lévővé kell változnia:

Előzmény: Delila669 (6464)
Delila669 Creative Commons License 2007.12.09 0 0 6464

Munka1 lapfülén a Kódhoz:

 

Sub Worksheet_Change(ByVal Target As Excel.Range)
    If (Target.Column = 1) Then
       nev = Target.Value
    End If
    Rendez (nev)
End Sub

A Munka2 lapon a B1-be írj valami címet. Ha nem a B-be akarod tenni az új adatot, csak aszerint akarsz rendezni, akkor annak az oszlopnak az 1. sorába adj címet.

 

Munka2-höz, de már nem a lapfülön, hanem Eszököz/Makró/Visual Basic (vagy ehelyett Alt+F11), bal oldalon kiválasztod a füzetedet. Beszúrás(Insert)/Modul.

Jobb oldalon kapsz egy üres oldalt, oda bemásolod ezt:

 

Sub Rendez(nev)
    Sheets("Munka2").Select
    usor = ActiveSheet.UsedRange.Rows.Count + 1
    Cells(usor, 2) = nev
    Selection.Sort Key1:=Range("B2"), Order1:=xlAscending, Header:=xlYes, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    Sheets("Munka1").Select
End Sub

Ha másik (nem B) oszlopba íratsz, a 4. sorban a 2-t írd át az oszlop sorszámára.

Ha a művelet után nem a Munka1-en akarsz kikötni, hagyd el a Sheets("Munka1").Select sort.

Előzmény: Delila669 (6463)
Delila669 Creative Commons License 2007.12.09 0 0 6463
Este válaszolok, ha addig nem oldódik meg.
Előzmény: macmelon (6462)
macmelon Creative Commons License 2007.12.09 0 0 6462
Bemásoltam, de az M2 még mindig tök üres.
Előzmény: Delila669 (6461)
Delila669 Creative Commons License 2007.12.09 0 0 6461
A másik lapfülön is "jobbra" kattintasz, és oda is bemásolod a makrót.
Előzmény: macmelon (6458)
Delila669 Creative Commons License 2007.12.09 0 0 6460
Beviszel egy új adatot a B oszlopba, és a makró hatására azonnal rendeződnek az adataid. (Target)
Előzmény: macmelon (6458)
Delila669 Creative Commons License 2007.12.09 0 0 6459

Fájlméret csökkentése:

 

Ha vannak olyan képleteid, amiknek az értékét már nem akarod változtatni, érdemes másolni, majd ugyanoda irányított beillesztéssel az értéküket beilleszteni.

Más:

Az szám alakú, de számolásra nem használt adatok cellaformátumát – mint irányítószám, telefon – érdemes szöveg tip-ra állítani már az adatok bevitele előtt. A szöveg kevesebb helyet igényel.

Ha már fel van töltve a táblázat, a FIX függvénnyel és az irányított beillesztés értékkel-lel végezd el az átállításukat.

Előzmény: macmelon (6456)
macmelon Creative Commons License 2007.12.09 0 0 6458
"Mindegyik lapfülhöz hozzá kell rendelni a makrót, mert csak az adott lapra vonatkozik."

Sajnos még soha nem használtam makrót, ezért ezt nem értem. Jelen pillanatban ott állok, hogy meg van nyitva a VB-ablak és be van másolva a kód. Hogyan tovább?

Természetesen nem gondolom, hogy szépen egyesével mindenkinek el kell magyarázni a dolgot, így nekem sem. Egy jó leírás valahol, hogy hogyan kell a makrókat alkalmazni?
Előzmény: Delila669 (6457)
Delila669 Creative Commons License 2007.12.09 0 0 6457

Mindegyik lapfülhöz hozzá kell rendelni a makrót, mert csak az adott lapra vonatkozik.

Újabb javítás: a Key marad 1 (egy kulcs szerint rendezel).

Előzmény: macmelon (6456)
macmelon Creative Commons License 2007.12.09 0 0 6456
Akkor sorban mondom:
1. Nagyon köszönöm, pontosan erre volt szükségem! Nagy segítség volt!

2. Esetleg ismert valami trükk, amivel csökkenthetném a fájlméretet?

3. Na, ez nem sikerült. Mondom lépésről lépésre, mit csináltam:

Van egy munkalapom (neve M1), ezen van ez:
1; b
2; c
3; a

Van egy másik munkalapom, ami üres (neve M2). Rákattintok jobb gombbal az M2-re, kiválasztom azt, hogy Kód megjelenítése. Erre megjelenik a Visual Basic ablak. Bemásolom az általad írt kódot.

És most mit kell tennem / mit csináltam rosszul?

Nagyon köszi!
Előzmény: Delila669 (6454)
Delila669 Creative Commons License 2007.12.09 0 0 6455

Az előbbi makró az első oszlop változását figyeli, és azt rendezi.

Az első oszlophoz ezeket kell átírni:

 

  If (Target.Column=2) Then

  Selection.Sort Key2:=Range("B2"), ... stb

Előzmény: macmelon (6453)
Delila669 Creative Commons License 2007.12.09 0 0 6454

Szia!

 

1. A2-be Adatok/Érvényesítéssel listából bevittem a 3 másik lapod nevét. Ez adja a lap nevét;

    B2-be szintén listából, A  B ... J-t, ez az oszlopot;

    C2-be 1  2 .... n (ahány sorod van);

    D2-be =INDIREKT(A2&"!"&B2&C2)

    Ez irányelv, variáld kedved szerint.

 

2. A sorok számát nem lehet variálni. A fájl mérete függ az adatok tartalmától, pl. a képletek növelik azt.

 

3. A lapfülön kattints jobb gombbal, válaszd a kódot, és másold be ezt:

 

Sub Worksheet_Change(ByVal Target As Excel.Range)

  If (Target.Column=1) Then

     Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _

       OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom

  End If

End Sub

 

Előzmény: macmelon (6452)
macmelon Creative Commons License 2007.12.09 0 0 6453
Közben nyomozok. Az 1. kérdés második felére részben megoldás lehet az INDEX fgv., persze nem szószerint ezt csinálja, de esetleg megfelelhet.
Előzmény: macmelon (6452)
macmelon Creative Commons License 2007.12.08 0 0 6452

Sziasztok!

Nagy öröm, hogy rátaláltam erre topikra, mert nagyon szeretem az excelt, sok hülyeséget csináltam már magam örömére, vagy munka, segítség miatt benne. (Nem vagyok guru, főleg, mert makrók nélkül dolgozok, de ezen majd lassan már kell változtatnom.) Három kérdés:

1. kérdés

Van 4 munkalapom, amelyek neve mondjuk Munka, Alma, Körte, Narancs.
A Munka nevű lap A sora úgy néz ki, hogy
Alma; Körte; Narancs

Azt szeretném, hogy a B sor így nézzen ki:
=Alma!$A$1; =Körte!$A$1; =Narancs!$A$1

De úgy, hogy ha az Almár Körtére cserélem, akkor a hivatkozás is cserélődjön.
Mondjuk, ha az A1 változik Alma helyett Körte lesz, akkor a B1-ben legyen =Alma!$A$1 helyett =Körte!$A$1

Vagy általánosabban hogyan lehet egy cellahivatkozást függvénnyel összerakni. Az is segítene, ha csak a munkalapon belül menne ez:
A sor: 4; 6; 9;
B sor: =D4; =D6; =D9

De, ha változatatom az A1-et 7-re, akkor B1 legyen =D7.

 

2. kérdés

Van egy viszonylag egyszerű munkafüzet. A mérete mégis jó nagy. Érdekelne, hogy milyen dolgok befolyásolják a méretet. Tudtok erről valamit? Az is megfelelne, hogy ha az alapértelmezett 65e sort tudnám szűkíteni pl. 1000-re.

 

3. kérdés

Itt az a kérdés, hogy megy-e makró nélkül, vagy most kezdjek tanulni (itt elég csak rögzíteni).

Az egyik lap így néz ki:

1; Barack

2; Körte

3; Alma

 

Azt szeretném, hogy egy másik munkalapon megjelenjenek ue. a párok, de a 2. oszlop szerint abc-sorrendben. Persze lehet menüből rendezni, de nekem az kellene, hogy ha átírok valamit az első munkalapon, akkor a sorrend is update-elődjön.

 

Minden ötletet, meglátást előre is köszönök!

grja Creative Commons License 2007.12.08 0 0 6451
KÖSZI!!!
Előzmény: Törölt nick (6450)
Törölt nick Creative Commons License 2007.12.07 0 0 6450
akkor inaktív (szürke) az a mező, ha a Nyomtatási kép/Beállít funkcióját használod
Előzmény: grja (6448)
Törölt nick Creative Commons License 2007.12.07 0 0 6449
Ne a nyomtatási képen keresztül akard beállítani. Használd a menü/oldalbeállítás funkciót.
Előzmény: grja (6448)
grja Creative Commons License 2007.12.07 0 0 6448

Sziasztok!

Készítettem egy  305 soros táblát próbából, mert nyomtatásnál a mezőneveket minden oldal tetejére ki kellene nyomtatni és ezt képtelenség beállítani (nálam). A beállításra szolgáló lapon (Oldalbeállítás / Lap fül) az ide vonatkozó mezők valami folytán le vannak tiltva (szürke és kiválasztahatlan!!) még akkor is, ha az eredetiben, ill. kézzel beállított x számú (pl. 20 oldal magas) oldalra szeretném kinyomtatni.

Fel lehet oldani a "Fennt ismétlődő sorok" tiltását valahogy??

Előre is köszönet a megfejtőnek!!

grja

Delila669 Creative Commons License 2007.12.07 0 0 6447
Szívesen.
Előzmény: szenyor Lopez (6446)
szenyor Lopez Creative Commons License 2007.12.07 0 0 6446
Nagyon frankó! Köszönöm!
Előzmény: Delila669 (6445)
Delila669 Creative Commons License 2007.12.07 0 0 6445

Ez már kezeli a számokat is

 

Sub Gepkocsi()
    Sheets("Összes").Select
    Range("A1").Select
    Selection.CurrentRegion.Select
    Tomb = Selection.CurrentRegion
    For sor = 2 To UBound(Tomb)
        lapnev$ = Cells(sor, 1).Value
        Sheets(lapnev$).Select: Range("A2").Select
        Tomb_lapnev = Selection.CurrentRegion
        Range(Cells(2, 1), Cells(UBound(Tomb_lapnev), 5)).Select
        Selection.ClearContents
        Sheets("Összes").Select
    Next
 
    For sor = 2 To UBound(Tomb)
        lapnev$ = Cells(sor, 1)
        Sheets(lapnev$).Select: Range("A1").Select
        Tomb_lapnev = Selection.CurrentRegion
        For oszl = 1 To 5
            Cells(UBound(Tomb_lapnev) + 1, oszl) = Sheets("Összes").Cells(sor, oszl)
        Next
        Sheets("Összes").Select
    Next
End Sub

Előzmény: szenyor Lopez (6443)
Delila669 Creative Commons License 2007.12.07 0 0 6444

A számot tartalmazó soroknak egy üres oszlopába írd: =fix(An;0), ahol az n a sorszám. Kijelölöd ezt a cellát, Ctrl+C-vel másolod, majd az A oszlopba irányítottan, értékként beilleszted. Ezután a függvényt tartalmazó cella tartalmát kitörölheted.

A javítások után érdemes kijelölni az A oszlopot, és cellaformátumnak a szöveget beállítani. Ezután már minden új "számos" gyártódat szövegként értelmezi.

Előzmény: szenyor Lopez (6442)
szenyor Lopez Creative Commons License 2007.12.07 0 0 6443
Igazából nem is kellene megváltoztatni a tipusát, csak a makroban, hogy tudjon vele dolgozni. Vagy erre nincs mód?
Előzmény: Delila669 (6441)
szenyor Lopez Creative Commons License 2007.12.07 0 0 6442
Ok, a több oszlop műxik. A másik rész viszont nem. Hiába írom a fixet a lapnev -hez, nem működik...
Előzmény: Delila669 (6440)
Delila669 Creative Commons License 2007.12.07 0 0 6441

Az átalakítást már eleve az Összes lapon kellene megcsinálnod.

A makróból kiveheted a rendező sort, ha nem akarod az eredeti sorrendet megváltoztatni.

 

Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom

Előzmény: szenyor Lopez (6439)
Delila669 Creative Commons License 2007.12.07 0 0 6440

A FIX függvény

 

=fix(cellahivatkozás;0)

ahol a 0 a tizedesek száma

 

Az öt sor helyett, ahol beírja a lapokra az adatokat, vidd be ezt

 

        For oszl = 1 To 5
            Cells(UBound(Tomb_lapnev) + 1, oszl) = Sheets("Összes").Cells(sor, oszl)
        Next

és a To 5-öt javítsd annyira, ahány oszlopod van.

Előzmény: szenyor Lopez (6439)
szenyor Lopez Creative Commons License 2007.12.07 0 0 6439

Köszönöm, működik! Nem viszi át az összes oszlopot, de majd módosítom a makrót, talán az már menni fog;)

Viszont egy dolog feltűnt: ha a lapnév szám és a szétdobási paraméter is szám, akkor hibával leáll. Milyen függvény alakítja át az excelben lévő számot szöveggé vb-ben? Úgy lenne bolondbiztos;)

Előzmény: Delila669 (6438)
Delila669 Creative Commons License 2007.12.07 0 0 6438

Itt van a megoldás:

 

Sub Gepkocsi()
    Sheets("Összes").Select
    Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    Range("A1").Select
    Selection.CurrentRegion.Select
    Tomb = Selection.CurrentRegion
    For sor = 2 To UBound(Tomb)
        lapnev = Cells(sor, 1).Value
        Sheets(lapnev).Select: Range("A2").Select
        Tomb_lapnev = Selection.CurrentRegion
        Range(Cells(2, 1), Cells(UBound(Tomb_lapnev), 5)).Select
        Selection.ClearContents
        Sheets("Összes").Select
    Next
 
    For sor = 2 To UBound(Tomb)
        lapnev = Cells(sor, 1).Value
        Sheets(lapnev).Select: Range("A1").Select
        Tomb_lapnev = Selection.CurrentRegion
        Cells(UBound(Tomb_lapnev) + 1, 1) = Sheets("Összes").Cells(sor, 1).Value
        Cells(UBound(Tomb_lapnev) + 1, 2) = Sheets("Összes").Cells(sor, 2).Value
        Cells(UBound(Tomb_lapnev) + 1, 3) = Sheets("Összes").Cells(sor, 3).Value
        Cells(UBound(Tomb_lapnev) + 1, 4) = Sheets("Összes").Cells(sor, 4).Value
        Cells(UBound(Tomb_lapnev) + 1, 5) = Sheets("Összes").Cells(sor, 5).Value
        Sheets("Összes").Select
    Next
End Sub

Előzmény: szenyor Lopez (6436)
Delila669 Creative Commons License 2007.12.07 0 0 6437

Az alábbi makrót másold be. Azt a lapot, ahol az összes adatod van, nevezd Összes-nek (vagy írd át a makróban mind a két helyen), a többi lap neve egyezzen meg a gépkocsi nevével.

A makró futtatása előtt mindegyik lapon készítsd el a fejsort.

 

Sub Gepkocsi()
    Sheets("Összes").Select

    Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    Range("A1").Select
    Selection.CurrentRegion.Select
    Tomb = Selection.CurrentRegion
    For sor = 2 To UBound(Tomb)
        lapnev = Cells(sor, 1).Value
        Sheets(lapnev).Select: Range("A1").Select

        Tomb_lapnev = Selection.CurrentRegion
        Cells(UBound(Tomb_lapnev) + 1, 1) = Sheets("Összes").Cells(sor, 1).Value
        Cells(UBound(Tomb_lapnev) + 1, 2) = Sheets("Összes").Cells(sor, 2).Value
        Cells(UBound(Tomb_lapnev) + 1, 3) = Sheets("Összes").Cells(sor, 3).Value
        Cells(UBound(Tomb_lapnev) + 1, 4) = Sheets("Összes").Cells(sor, 4).Value
        Cells(UBound(Tomb_lapnev) + 1, 5) = Sheets("Összes").Cells(sor, 5).Value
        Sheets("Összes").Select
    Next
End Sub

A makró az első futtatáskor jó eredményt ad, a következőknél viszont az előzőleg felírt adatokhoz hozzáadja a többit. Erre majd valaki biztosan tud ötletet adni, hogy lehet ismeretlen lapszámú és nevű lapokon törölni az előző adatokat.

 

Ha nem lenne ötlet – ami lehetetlen –, a második futtatástól kezdve ki kellene jelölni együtt a lapokat, és törölni a már beírt adatokat.

Előzmény: szenyor Lopez (6436)
szenyor Lopez Creative Commons License 2007.12.07 0 0 6436
Másik munkalapon akarom látni. Hogy az előző példánál maradjak: legyen egy mercedes lap, egy bmw, egy fiat, stb. És amikor az első lapra beírok egy adatot, az jelenjen meg azon a lapon is, amelyikbe tartozik.
Előzmény: toccata (6435)
toccata Creative Commons License 2007.12.06 0 0 6435
Kapcsold be az autoszűrőt és csak azt a típust látod, amelyikre kíváncsi vagy.
Nem kell kiszedni semmit.
Előzmény: szenyor Lopez (6434)
szenyor Lopez Creative Commons License 2007.12.06 0 0 6434

Ha van egy táblázatom 5 oszloppal és egy másik munkalapon szeretnék ebből a táblázatból kiszedni sorokat, néhány feltétel alapján, azt csak makroval tudom megtenni? Vagy irányított szűréssel, esetleg tömbképlettel?

Pl. az egyik táblázatban autókat sorolok fel, az oszlopok: gyártó, tipus, rendszám, önsúly, alvázszám és egy másik táblázatban szeretném csak a Mercedesek listáját. De úgy, hogyha az első táblába új adat kerül, az automatikusan kerüljön a másikba is.

Törölt nick Creative Commons License 2007.12.06 0 0 6433
Szia!
Használd a KICSI, NAGY, SORSZÁM függvényeket.
A legritkábbra most kapásból nem tudom a választ de más nem mondja meg utánanézek.
Elvileg: {=MIN(DARABTELI(A1:A13;A1:A13))} tömbképlet megadja ezt is
Előzmény: cikola3 (6432)
cikola3 Creative Commons License 2007.12.06 0 0 6432

Helló Exel  tudorok

 

Van egy jó  nagy táblázatom véletlenszerű számokkal  feltöltve.

A  "módusz"  függvénnyel sikerült megtalálni a leggyakrabban elfordulót.

Hogyan  lehetne megkeresni a 2.-ik , 3.-ik , n.-ik  legyakoribbat , vagy akár a leg ritkábban előfordulót?

Köszi a segítséget.

Törölt nick Creative Commons License 2007.12.05 0 0 6431

Sziasztok!

 

Azt szeretném megkérdezni, hogy mi okozhatja egy sima excel fájl megnyitásakor a "Fájlhiba:az adatok elveszhetnek" hibaüzenetet.

Az érdekes az, hogy csak akkor jelenik meg ez az üzenet, ha egy adott gépről (mindig erről a gépről ) valaki előzőleg már megnyitotta ugyanezt a fájlt, esetleg beleírt egy értéket (mondjuk egy cellához megjegyzést szúrt be), majd elmentette és bezárta. Ezután több különböző gépről már csak a fent leírt hibaüzenettel lehet a fájlt megynyitni (érdekes, hogy vannak olyan gépek is amelyek simán, hibaüzenet nélkül nyitják meg). Vajon mi lehet ennek az oka?  

 

Előre is köszönöm

 

Goosnargh Creative Commons License 2007.12.05 0 0 6430
Természetesen megengedhető a nagybetűsítés de nem csak ez alkalommal szeretném elsikálni a problémát : Ha ez tényleg így van ez egy komoly gond lehet.
Ilyen kivételej nem szabadna, hogy legyenek hibaüzenet nélkül
hiszen a mezei user ráhagyatkozik az excelre.

Pénzügyi-kontrolling területen azért néhány szót rövidítünk pc-vel.
( számítógépnek, profit center, production cost stb. )
Ez mellé azért sanszos hogy valaki még odabiggyeszt egy S-sel kezdődő szót, szórövidítést.

Konkrét éles esetben amikor nincs mód, idő keresztellenőrizni akkor azért ez okozhat ez némi gondot.

Ezenfelül ki tudja, hogy vannak más betűkombinációk is aminél elfogadod, hogy a SZUMHA nem összesített semmit közben pedig kellett volna.

Most nézem FKERES sem működik rá ...
Előzmény: Delila669 (6426)
nuq5let Creative Commons License 2007.12.05 0 0 6429
Köszi, szuper!
Előzmény: Jozsef (6428)
Jozsef Creative Commons License 2007.12.05 0 0 6428
Magyarul KITEVŐ függvény e alapú exponenciális függvény.
Előzmény: nuq5let (6427)
nuq5let Creative Commons License 2007.12.05 0 0 6427

sziasztok!

 

Abban szeretném a segítségeteket kérni, hogy mi modon lehetne az exponencinális függvényt létrehozni excelben? Az =exp(szám)  parancs sajnos nem működik. Vagy saját függvényt kell rá írni?

 

Delila669 Creative Commons License 2007.12.05 0 0 6426

Az én régi rongyos 2000-resemben még nem rontották el ezt a funkciót.

Megengedhető esetleg a nagybetűre váltás a fájlodban (=nagybetűs)?

Jobb ötletem nem lévén...

Előzmény: Goosnargh (6425)
Goosnargh Creative Commons License 2007.12.05 0 0 6425
Nem - teljesen ugyanaz a hossz.
+ kapásból csináltam egy egyszerű minta file-t tesztelni :

forrás tábla PCS - sel kezdődő bármily sorát nem találom meg az összegző táblázamból ha ott pcS-sel kezdődik amire szumházok.

Nekem 2007-es magyar office-om van de kipróbáltam a kolláganőm 2003-as magyar office-ával és ott sem működik.
Előzmény: Delila669 (6424)
Delila669 Creative Commons License 2007.12.05 0 0 6424

Nézd már meg, amúgy egyeznek-e a karakterek, nincs-e előtte, utána szóköz (pl. HOSSZ függvénnyel).

 

Nálam a magyar nyelvű nem tesz különbséget a kis- és nagybetű között.

Előzmény: Goosnargh (6423)
Goosnargh Creative Commons License 2007.12.05 0 0 6423
( kis "p" - kis "s" - nagy "S" )

elnézést : ( kis "p" - kis "c" - nagy "S" ) -t akartam írni.
Előzmény: Goosnargh (6422)
Goosnargh Creative Commons License 2007.12.05 0 0 6422
Üdvözlök Mindenkit !

Érdekes dolgot vettem ma észre:

Kaptam egy excel file-t havi pénzügyi számokkal angol excel-lel dolgozó
kollégámtól. Megnyitottam a magyar excel-lel és meglepve tapsztaltam, hogy nálam más a végösszeg.

A táblázat alapvetően szumha függvényekkel szedi össze más táblázatokból az eredményeket.

Egy cella okozta az eltérést.
Eddig úgy tudtam, hogy a szumha kis-nagybetűt nem különböztet meg.

Most viszont az eredménytáblámba "pcStationery"-re szumházva a forrás file
"PCStationery" sorait nem összegzi.

Ez a pcS ( kis "p" - kis "s" - nagy "S" ) valami vezérlőkarakter ?
Vannak még más ilyenek is ?

Angol excelben miért nem gond ez - miért csak a magyarban ?

Elnézést ha ez a téma már volt ezen a fórumon, most nincs időm visszaolvasni. Köszönet minden tanácsért !
Törölt nick Creative Commons License 2007.12.03 0 0 6421
A leírásból sajnos nem tudok okos lenni, de ha elküldöd email-ben, megnézem.
Előzmény: byszka11 (6416)
toccata Creative Commons License 2007.12.02 0 0 6420
No igen. Minden viszonylagos. Kinek mi a szemét, és mi a hasznos.
Bizonyára vannak esetek, amikor jól jön(nek) eme funkció(k) - már ha júzer egyáltalán ismeri őket -, és vannak esetek, amikor feleslegesek.
Ám ez a topic nem erről szól.
Előzmény: Delila669 (6419)
Delila669 Creative Commons License 2007.12.02 0 0 6419

Az elmentett szemetek között van egy hasznos is.

Az újból megnyitott fájlban a Shift+F5 az utolsó beviteli helyre pozicionálja a cursort, ami nagy méretű dokumentumoknál jól jöhet.

Előzmény: toccata (6418)
toccata Creative Commons License 2007.12.02 0 0 6418
Sajnos mind a Word-nek, mind az Excel-nek sajátossága, hogy sok szemetett is elment a fájlokba.
Nálam már sok alkalommal segített, hogy egy M$ fájlt OOo-val (OpenOffice.org-gal) nyitottam meg, aztán vele ismét elmentettem open document formátumban is, és M$ formátumban is. Mindenféle változtatás nélkül.
Az open document formátum eleve tömörített, így kisebbek a fájlméretek, csakhogy a M$ programok nem tudják kezelni őket. :(
Ám a legtöbb esetben a M$ formátunban is lecsökkentek a fájlméretek. Volt, amikor kevesebb, mint a fele lett. A szemét nem lett elmentve.
Próbáld ki!
Előzmény: maagnes (6412)
Delila669 Creative Commons License 2007.12.02 0 0 6417

Megér egy próbát, mentsd el más néven a dokumentumot.

 

A Wordnek megvan az a sajátossága, hogy a doc eltárolja a benne végzett módosításokat, amik növelik a méretét. Ha az új fájl mérete kicsi, OK. Ha nem, akkor egy újonnan megnyitott doc-ba másold át a régi szövegét, mentsd el, ezután csatolj.

 

Mivel sok diagramot kell csatolnod, érdemes az első csatolást makróra rögzíteni, billentyű kombinációt rendelni hozzá, és a többit már ezzel csatolni.

byszka11 Creative Commons License 2007.12.01 0 0 6416
Sziasztok!

Egy kis segítséget szeretnék kérni.

Adott egy Form, melyen van egy Combobox, melynek a Text-e alap állapotban üres. Labelekben megjelennek különböző adatok, melyek a Combobox értékétől függnek. Gombnyomásra megnyílik egy másik Form, ahol a Labelekben megjelenő értékeket lehet módosítani a "Lezárás" gombbal. Amennyiben a Combobox üres, nincs is baj, de ha nem akkor a Combobox folyamatában hibát jelez. A probléma az, hogy egy olyan munkalapon próbálja végrehajtani a feladatot ami nem is szerepel a Combobox eseményében. A konkrét kérdés igazából az, hogy a Combobox Click eseménye miért fut le amikor nem is történik benne változás és nem is kattintok rá csak egy másik Form bezárul, vagy ha ez mindenképpen lefut, hogyan lehet, hogy olyan munkalapra megy, ami nem is szerepel az eseményben.

Előre is köszönöm.
maagnes Creative Commons License 2007.12.01 0 0 6415
Nagyon köszi, a csatolás tényleg jó lenne (elvileg így próbálom csinálni), de mégsem csökken a fájl mérete - nem tudom, miért.
Előzmény: Delila669 (6414)
Delila669 Creative Commons License 2007.12.01 0 0 6414

A csatolásnak még is az előnye a beillesztéssel szemben, hogy ha az Excelben módosítod a diagramot, a Wordben is annak megfelelően változik.

 

Ha némelyik diagramnál azt akarod, hogy a Wordben a mostani érték maradjon, akkor azokat ne csatold, hanem illeszd be.

Előzmény: maagnes (6412)
Delila669 Creative Commons License 2007.12.01 0 0 6413

Ezt ajánlom:

 

Az Excelben kijelölöd a diagramot, Ctrl+C-vel másolod.

Átváltasz a Wordbe, Szerkesztés/Irányított beillesztés/Csatolás.

 

Így nem a képet (diagramot), hanem csak az útvonalát menti a docba, de az ábrák megjelennek.

 

Ha másik gépre átviszed, ugyanolyan útvonalon legyenek elérhetőek az ábrák.

Előzmény: maagnes (6412)
maagnes Creative Commons License 2007.12.01 0 0 6412

Sziasztok!

 

Számomra rejtélyes ügyben szeretnék segítséget kérni. Excelből Wordbe másoltam át sok diagramot, az eredmény egy 16 MB-os doc lett, nekem pedig kisméretű fájl kellene. Már rájöttem, hogy képként kellett volna átmásolni a diagramokat Irányított beillesztéssel, nem pedig sima vágólappal. Nekiálltam kitörölni az ábrákat és az említett módon újra beilleszteni, de a doc fájl mérete nem változott  - még akkor is 16 MB maradt, amikor minden létező ábrát és szöveget kitöröltem belőle. Meg tudná mondani valaki, hogy hogyan tudnám csökkenteni a méretet úgy, hogy csak az ábrákat cserélem?

 

Előre is köszi!

Törölt nick Creative Commons License 2007.11.29 0 0 6411
Passz. De közben rájöttem, hogy az én megoldásom se jó.
:(
Előzmény: Delila669 (6409)
Delila669 Creative Commons License 2007.11.29 0 0 6410

Igen, beszedi.

Talán ez úgy-ahogy elfogadható:

 

    Selection.FormatConditions.Delete
    Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlBetween, _
        Formula1:="100", Formula2:="500"
    Selection.FormatConditions(1).Interior.ColorIndex = 3
    Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlBetween, _
        Formula1:="=""A""", Formula2:="=""z"""
    Selection.FormatConditions(2).Interior.ColorIndex = 3

 

Ha nem is tökéletes, de legalább az üres cellákat nem színezi.

Előzmény: Törölt nick (6408)
Delila669 Creative Commons License 2007.11.29 0 0 6409

Egy a baj az adatérvényesítéssel. Makróból történő feltöltésnél bármit elfogad.

Vajon miért?

Előzmény: Törölt nick (6405)

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!