Keresés

Részletes keresés

Törölt nick Creative Commons License 2014.03.18 0 0 24559

Sziasztok!

Légyszi nézzetek már rá erre a topikra, mer most nem érek rá.

http://forum.index.hu/Article/showArticle?t=9218722

Köszi.

Fferi50 Creative Commons License 2014.03.18 0 0 24558

Szia!

 

És ez mennyivel egyszerűbb annál, mint amit javasoltam?

 

Üdv.

Ps. Ráadásul még az excel konfigurációt is úgy felejtheted, aztán fogalmad sincs róla később, miért működik hibásan.

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

Szia.

Következő lehetőségekre gondolok:

- Excel konfigurációban átállítod a decimal separatort

 

Default:

 

Felhasználói beállítás

 

- Operációs rendszerben átállítod

- a számokat CStr utasítással átkonvertálod stringgé és azon hajtod végre a műveletet. Ekkor a szám felhasználásakos VAL utasítással visszakonvertálod.

Előzmény: Fferi50 (24556)
Fferi50 Creative Commons License 2014.03.17 0 0 24556

Szia!

 

Mint írtam, a probléma abból adódik, hogy a számformátumban a VBA a tizedespontot használja, míg a cellákban a magyar beállításnak megfelelő tizedesvessző kell, hogy megjelenjen. Ezért a makróból a számban levő pontot nem tudja vesszőre cserélni értelmesen. Addig működik a csere, amíg nem írod ki a cellába.(Engem is ez vezetett félre az első válaszomban.)

Viszont a val a pontot értelmezni tudja és ennek megfelelően a jó számértéket írja ki a cellába a magyar formázásnak megfelelően vesszővel.

 

Üdv.

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

Értelemszerűen a kiválasztott cellára előbb rá kell pozicionálni

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

Egy példa ahol alsó vonalat cseréli középsőre. A karakterek átírhatók egyebekre. Ez kíválóan működik bár pont és vesszőre nem próbáltam ki.

 

Cells.Replace What:="-", Replacement:="_", LookAt:=xlPart, SearchOrder _
                             :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Előzmény: Fferi50 (24542)
Delila10 Creative Commons License 2014.03.17 0 0 24553

Beírod a számokat az A oszlopba, melléjük a B1 és B2 cellába, amit fFeri javasolt, a B2 cellát lemásolod a szükséges sorig.

 

A tartományban állva Ctrl+r bill. kombinációra a két kitöltött oszlopod – az Ecxeled verziójától függően – tartománnyá, vagy listává alakul. A kettő ugyanaz, csak a megnevezésük más.

 

Most már beírhatod a C1 és C2 képletét.

 

Mikor bővíted az A oszlopot új cellával, a B képletét automatikusan lemásolja, és ennek megfelelően változik a C1 és C2 értéke.

 

Előzmény: bejgleee (24551)
Fferi50 Creative Commons License 2014.03.17 0 0 24552

Szia!

 

Egyenlőre úgy néz ki, hogy nem találunk olyan beépített képlet(eke)t, amellyel megoldható lenne a feladat.

Viszont semmi sem gátolja meg szerintem, hogy a segédoszlopodat előre kitöltsd a képlettel. Az általam javasolt megoldással ez nem fogja befolyásolni az eredmény helyességét:

 

Feltételezés:

A számok az A oszlopban vannak.

A segédoszlop a B oszlop.

Az eredmény a C1 és C2 cellába kerül.

 

B1 cella képlete: =HA(ÜRES(A1);0;HA(A1>0;1;-1))  vagy =Előjel(A1)

B2 cella képlete: =HA(ÜRES(A2);0;HA(A2>0;HA(A1>0;B1+1;1);HA(A1<0;B1-1;-1))) és ezt a képletet másold(húzd) végig a B oszlopon (akár teljesen végig, de ha van információd, hogy hány sor lesz, akkor attól valamivel lejjebb).

 

A C1 cella képlete: =Max(B:B)

A C2 cella képlete: =Min(B:B)*-1

 

Természetesen megoldható, hogy a segédoszlopok ne legyenek láthatóak (elrejthetők), illetve az is hogy ne azon a munkalapon legyenek, amelyikre beolvasod az adatokat.

Ebben az esetben a képletekben a munkalap nevét is be kell írni (pl. Munka2!A1)

 

A képlet helyes működéséhez még az szükséges, hogy az A oszlop csak a beolvasott számok, illetve üres cellák legyenek.

 

Remélem, sikerült érthetően leírnom, próbáld ki, hátha így megfelel.

 

Üdv.

Előzmény: bejgleee (24551)
bejgleee Creative Commons License 2014.03.17 0 0 24551

"Egymás utáni pozitív, negatív értékek"...

Köszönöm mindenkinek az idejét, amit a problémámra fordítottatok!

Meg kell még emésztenem az írottakat, mert nem igazán dolgozom excellel (ilyen szinten).

Segédoszloppal nekem is sikerült, de mivel ez "automatikusan" töltődő tábla lenne, az nem megoldás, hogy segédoszlopot használok, mert akkor ki "húzza" a képleteket a beírt sorok után? :-)

Persze ha van olyan beállítás ,vagy lehetőség, hogy ha egy új sor íródik be a táblába, akkor a segédoszlop is kitöltődjön (a képlettel) vele együtt, akkor az is jó lenne.

A makróktól azért tartok egy kicsit, mert mi van, ha letiltják őket?

Ezért is szeretnék valami "standard" keresni.

Előzmény: Delila10 (24506)
roley Creative Commons License 2014.03.16 0 0 24550

Ez már működött, köszönöm

Előzmény: Fferi50 (24549)
Fferi50 Creative Commons License 2014.03.16 0 0 24549

Szia!

 

Próbáld ki a következő makrót:

 

sub makró1

dim md as range,mdcim as string

Set md = ActiveSheet.UsedRange.Find(what:=".", lookat:=xlPart, LookIn:=xlValues)
mdcim = md.Address
Do While Not md Is Nothing
   md.Value = Val(md.Value)
   Set md = ActiveSheet.UsedRange.Find(what:=".", lookat:=xlPart, LookIn:=xlValues, after:=md)
   If md.Address = mdcim Then Exit Do
Loop

end sub

 

Az a probléma, hogy az excel a makrókban csak a pontot ismeri fel tizedes vessző jelölőnek. A val függvény is így működik. Amikor a cella értéket átalakítod a val függvénnyel, automatikusan a magyar beállítású formátum fog előjönni a cellában.

 

Remélem, ez megoldja a problémádat.

 

Üdv.

Előzmény: roley (24546)
Fferi50 Creative Commons License 2014.03.16 0 0 24548

Szia!

 

Igazad van, nálam sem működik helyesen a makró és az független a szám hosszától is.

Most agyalok még rajta.

 

Üdv.

Előzmény: roley (24543)
Fferi50 Creative Commons License 2014.03.16 0 0 24547

Szia!

 

A makró - mint kiderült - nálam is "hepciáskodik" és nem működik helyesen, viszont a "kézi" keres - cserél igen. Ha bekapcsoltam a makrórögzítőt a "kézi" keres-cserélnél és a kapott makrót ráengedtem, akkor szintén nem működött. Olyan, mintha a pontot nem vesszőre, hanem üres sztringre cserélné.

 

Üdv.

Előzmény: Törölt nick (24545)
roley Creative Commons License 2014.03.16 0 0 24546

Van pont, nem képlettel számolódik. Amúgy a területi beállításoknál minden alapértelmezetten van: tizedes-->vessző. Ha ráállok, akkor is ugyan azt az értéket adja ki felül. Sajnos nekem sem sikerült sehogy sem rájönnöm a problémára, ezért eg kicsit farmucibb megoldást találtam ki ÖSSZEFŰZ képlettel.

 

Köszi a tanácsokat, tippeket

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

Van abban pont egyáltalán?

Ezek konstans cellaértékek, vagy képlettel számolódnak?

A területi beállításokban milyen karakter van megadva tizedesjelként?

Ha egy cellára ráállsz, amit benne látsz, megegyezik azzal, ami a szerkesztőlécen megjelenik?

 

Előzmény: roley (24543)
Fferi50 Creative Commons License 2014.03.16 0 0 24544

Szia!

 

Én inkább beállításokra/cellaformázásra gyanakszom, de 2013-ban nem vagyok kompetens, nekem a 2010-ben simán megcsinálja.

 

Üdv.

Előzmény: roley (24543)
roley Creative Commons License 2014.03.15 0 0 24543

A macro igy már lefut, de ugyan az a gond, mint ami a kiindulásnál volt. Valamiért az istenért sem akarja kicserélni a pontot vesszőre. 

 

Nem lehet, hogy azzal lehet gondja, hogy a pont után túl sok számjegy van. Más sheetekben, ahol pl 302.43, 11.43 stb vannak, tehát kevesebb számjegy a pont után, ott nincs gond az átalakítással.

Előzmény: Fferi50 (24542)
Fferi50 Creative Commons License 2014.03.15 0 0 24542

Bocs, zárójelek nélkül kell beírni:

 

Range("B3:C10").Replace ".",","

 

Üdv.

Előzmény: roley (24541)
roley Creative Commons License 2014.03.15 0 0 24541

Próbáltam az általad javasolt módon, de még mindig hibaüzenetet ir ki:

"Compline error: Expected: ="

 

Ha simán bemásolom, akkor, is pirossal jelöli az adott sorban h valami gond van.

 

 

Előzmény: Fferi50 (24538)
Fferi50 Creative Commons License 2014.03.15 0 0 24540

Elkéstél :(

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

Range("B3:C10").Replace(".",",")

Előzmény: roley (24537)
Fferi50 Creative Commons License 2014.03.15 0 0 24538

Szia!

 

A mit és a mire az mindig szöveg kell legyen! Csináld lsz. így:

 

Range("B3:C10").Replace(".",",")

 

vagy ha ez nem tetszik, akkor

 

mit="."

mire=","

Range("B3:C10").Replace(mit,mire)

 

Üdv.

Előzmény: roley (24537)
roley Creative Commons License 2014.03.15 0 0 24537

Akkor elvileg nekem a következő parancsot kellene használnom:

 

Range("B3:C10").Replace(.,,)

 

Viszont erre a következő üzenetet kapom: "Expected: identifier or bracketed expression

Előzmény: Fferi50 (24536)
Fferi50 Creative Commons License 2014.03.15 0 0 24536

Szia!

 

Akkor használt a range.replace -t:

 

Range("A1:A5").replace(mit,mire), vagy akár sheets("Munka1").usedrange.replace(mit, mire).

 

Figyelem, ez nem a normál replace, hanem a range.replace, ahol nem kell megmondani, hogy miben cseréljen (illetve az adott range értékeit mindet végignézi), csak azt, hogy mit mire kell cserélni.

 

Üdv.

 

 

Előzmény: roley (24535)
roley Creative Commons License 2014.03.15 0 0 24535

Ez csak az adott cellára érvényes, nem? Nekem egy adott rangen belül kell az összeset kicserélni

Előzmény: Fferi50 (24532)
roley Creative Commons License 2014.03.15 0 0 24534

2013-as

 

A furcsa az hogy más sheetekben működik rendesen a replace funkció, itt viszont nem

Előzmény: Fferi50 (24533)
Fferi50 Creative Commons License 2014.03.15 0 0 24533

Milyen excel verziód van?

Előzmény: roley (24531)
Fferi50 Creative Commons License 2014.03.15 0 0 24532

Szia!

 

Próbálkozz a

    replace(1.4235,".",",")

utasítással.

 

Üdv.

Előzmény: roley (24531)
roley Creative Commons License 2014.03.15 0 0 24531

Sziasztok!

 

A következő problémával fordulok hozzátok:

 

Makróban akarok kicserélni karaktert egy számból, hogy a következő legyen: 1.4235 --> 1,4235

tehát a pontot vesszőre. A gondom, hogy míg ha kézzel az excelben csinálom,akkor gond nélkül kicseréli, addig a makroban nem tudja behelyezni a vesszőt és a következő eredmény lesz: 1.4535 -->  14535

 

 

Mi lehet a gond?

 

 

köszi, Roley

 

 

 

Delila10 Creative Commons License 2014.03.15 0 0 24530

Köszi, ezt tudom, csak elbambultam.

Előzmény: Fferi50 (24529)
Fferi50 Creative Commons License 2014.03.15 0 0 24529

Reméltem is :)  (mármint, hogy hibátlan.)

 

Option Base pedig nem mindennap állítódik.

Én így szeretem (mert nem kell az indexekkel variálni). Ha nem akarod átállítani, akkor a végét így kell megadni:

szamos(0, 0) = "Legtöbb egymás utáni pozitív szám:"
szamos(0, 1) = "Legtöbb egymás utáni negatív szám:"
szamos(1, 0) = posmax
szamos(1, 1) = negmax

 

Üdv.

Előzmény: Delila10 (24528)
Delila10 Creative Commons License 2014.03.15 0 0 24528

Hogy erre nem jöttem rá! Így már hibátlan.

Előzmény: Fferi50 (24527)
Fferi50 Creative Commons License 2014.03.15 0 0 24527

Szia!

 

Bocsi, azt nem írtam hozzá, hogy a modulban Option Base 1-t állítsd be.

 

Üdv.

Előzmény: Delila10 (24526)
Delila10 Creative Commons License 2014.03.15 0 0 24526

A1:B2-be beírtam a függvényedet tömbfüggvényként. A1:A2 és B1 ->0, B2 -> Legtöbb egymás utáni pozitív szám:

 

Msgbox rendben kiírja a legtöbb pozitív, és negatív értéket. Valamit rosszul csinálok.

 

Tombol a vihar március 15. tiszteletére.

Előzmény: Fferi50 (24513)
Fferi50 Creative Commons License 2014.03.15 0 0 24525

Szia!

 

Éppen te mutattad be/(ki), hogy a logikai függvényeknek nincs tömb kimenetük.:(

 

Még agyalok én is....

 

Üdv.

Előzmény: Törölt nick (24523)
Zoxo Whitney Creative Commons License 2014.03.15 0 0 24524

Ezt találtam én is ki a pincében kazánetetés közben:

=HA(A2>0;HA(ELŐJEL(A1)=ELŐJEL(A2);B1+1;1);HA(A2<0;HA(ELŐJEL(A1)=ELŐJEL(A2);B1-1;-1);0))

A Ha függvényt nem lehet "tömbösíteni", hogy elkerüljük a segédoszlopot?

Ezekhez a mátrix-függvényekhez nagyon kevéssé értek...

 

Előzmény: Fferi50 (24520)
Törölt nick Creative Commons License 2014.03.15 0 0 24523

Ezen buktam ki én is.

SQL-ben van egy olyan függvény, hogy NVL, Milyen jó lenne itt egy hasonló.

Előzmény: Fferi50 (24522)
Fferi50 Creative Commons License 2014.03.15 0 0 24522

Ha azt el lehetne érni, hogy a hiba helyett mondjuk 0-t adjon eredményül...

Ha külön oszlopban, nem tömbképlettel viszed be a ha hibás formulát, akkor működik, de tömbképlettel nem :(

 

 

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

Ez remek, csak szembe megy azzal a kifejezett kívánsággal, hogy ne legyen segédoszlop.

Előzmény: Fferi50 (24520)
Fferi50 Creative Commons License 2014.03.15 0 0 24520

Szia!

 

Nekem egy ilyen képletsorom van (értékek az A oszlopban, képlet a B oszlopban):

első cellában:            =Ha(A1>0;1;-1)

további cellákban:     =HA(A2>0;HA(A1>0;B1+1;1);HA(A1<0;B1-1;-1))

A C1,C2 cellákba:

A pozitív számokra    =max(B:B)

A negatív számokra   =min(B:B)

 

Üdv.

 

PS. Nézem a Te képletedet is.

Előzmény: Törölt nick (24516)
Törölt nick Creative Commons License 2014.03.15 0 0 24519

Mármint, le tudnád ezt fordítani képletre?

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

Eh?

Előzmény: Zoxo Whitney (24517)
Zoxo Whitney Creative Commons License 2014.03.15 0 0 24517

Előjel és szum függvény???

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

Segítsetek már, mert nem bírom feltörni ezt a diót. (Még mindig a tegnapi feladaton törpölök.)

A példában H2-től indul a pozitív és negatív számok sora lefelé. Az alábbi tömbképlet megmondja, hogy egy pozitív szám után hányadik szám lesz a következő negatív érték (feltételezve, hogy 500-nál hosszabb pozitív sorozatok nem fordulnak elő).

 

{=HOL.VAN(0;OFSZET(H1;SOR(A1:A2000);0;500;1);-1)}

 

A képlet eredménye ez:

1          3

1          2

1          1

-1         #HIÁNYZIK

1          2

1          1

-2         #HIÁNYZIK

-2         #HIÁNYZIK

-1         #HIÁNYZIK

-1         #HIÁNYZIK

-1         #HIÁNYZIK

1          4

1          3

1          2

1          1

-1         #HIÁNYZIK

 

Jól láthatóan a jobb oldali oszlopból a legnagyobb számot kellene kiválasztani, az lenne a végeredmény, de nem megy. A

{=MAX(HOL.VAN(0;OFSZET(H1;SOR(A1:A2000);0;500;1);-1))}

nem működik, mert a #HIÁNYZIK értéket nem tudja kezelni. A MAX helyett a NAGY sem megy, és ha beleteszek valami hibaellenőrző függvényt, pl. HA(HIBÁS(kif1);0;kif1) , akkor is rossz érték jön ki. Van valakinek ötlete?

Előzmény: Törölt nick (24511)
Törölt nick Creative Commons License 2014.03.14 0 0 24515

Kitörlöd a Wordből a 3 oszlopost, és átmásolod Excelből mind az 5-öt.

Előzmény: Pekedli (24514)
Pekedli Creative Commons License 2014.03.14 0 0 24514

Szia Szakértő!

 

Van egy Word táblázatom 5 oszloppal.

Az első 3 oszlop ki van töltve.

A táblázatot átmásoltam Excelbe, és ott ki lett töltve az utolsó két oszlop.

Hogyan tudom az eredeti Word táblázatba az utolsó két oszlopot bemásolni?

 

Köszi a segítséget!

Fferi50 Creative Commons License 2014.03.14 0 0 24513

Szia!

 

Az alábbi függvényt Jimmy ihlette, amikor tbandó kérdésére megírta a tömbfüggvény alapot (24493).

 

Az eredményt egy 2x2-es tartományba írja ki, tömbformában kell bevinni .

 

Function szamszamol(ByRef rng As Range) As Variant
Dim posmax As Long, posx As Long, negmax As Long, negx As Long, cl As Range
Dim szamos(2, 2) As Variant
posmax = 0
negmax = 0
posx = 0
negx = 0
For Each cl In rng.Cells
    If cl.Value > 0 Then
       posx = posx + 1
       negmax = WorksheetFunction.Max(negmax, negx)
       negx = 0
    Else
       posmax = WorksheetFunction.Max(posmax, posx)
       posx = 0
       negx = negx + 1
    End If
Next
szamos(1, 1) = "Legtöbb egymás utáni pozitív szám:"
szamos(1, 2) = "Legtöbb egymás utáni negatív szám:"
szamos(2, 1) = WorksheetFunction.Max(posmax, posx)
szamos(2, 2) = WorksheetFunction.Max(negmax, negx)
szamszamol = WorksheetFunction.Transpose(szamos)
End Function

 

Üdv.

Előzmény: Delila10 (24512)
Delila10 Creative Commons License 2014.03.14 0 0 24512

Elő azzal a tömbfüggvénnyel! :)

Előzmény: Fferi50 (24507)
Törölt nick Creative Commons License 2014.03.14 0 0 24511

Nyilván többféle megoldása van a feladatnak. Kérdés, hogy megéri-e felkutatni az összeset, ha már van egy, ami működik.

Csak azért küldtem be a sajátomat, mert mire Delila megírta az övét, már az enyém is készen volt. Meg azért, mert jelentősnek gondoltam a sebességbeli különbséget. Most már csak az hatna meg, ha valaki makró nélkül, csak a beépített függvényekkel megoldaná, mert nekem nem sikerült.

 

Előzmény: Fferi50 (24509)
Törölt nick Creative Commons License 2014.03.14 0 0 24510

Bakker, nem értettem, mi ez a MaxNull udf. Feri kellett hozzá, hogy leessen a tantusz, hogy mire is válaszolsz :))

Előzmény: Delila10 (24506)
Fferi50 Creative Commons License 2014.03.14 0 0 24509

Szia!

 

Ez jogos, viszont egy plusz paraméterrel jelezni lehetne, hogy a pozitív vagy a negatív előfordulásokat keressük.

A nullával kapcsolatos kérdésed pedig nyilván arra irányult, hogy az beszámít-e a pozitív számok közé, vagy megszakítja a "sorozatot".

 

Üdv.

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

Csak ha mondjuk a két eredményt két egymástól távoli cellában akarja elhelyezni, akkor nem nagyon fog boldogulni tömbfüggvénnyel.

Előzmény: Fferi50 (24507)
Fferi50 Creative Commons License 2014.03.14 0 0 24507

Szia!

 

Miért kell két függvény?

Egy tömbfüggvény is megoldja a feladatot, az egyik elemben számolod a pozitív, a másikban a negatív számok előfordulásait.

Vagy rosszul gondolom?

 

Üdv.

 

Előzmény: Törölt nick (24505)
Delila10 Creative Commons License 2014.03.14 0 0 24506

Nulla esetén egy MaxNull udf megadja a darabszámot. :)

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

Pont ebben a pillanatban végeztem a saját megoldásom tesztelésével. Nekem is csak udf megoldásom van, alapjaiban ugyanaz, mint a Tiéd, csak egy jelentős különbség van, amitől némileg gyorsabb lesz a lefutás. Hátránya viszont, hogy csak 65536 sorig működik.

A kérdező pedig nem írta le, hogy mi van akkor, ha a szám nulla.


Function MaxNegative(Rng As Range) As Long
    Dim Arr, i As Long, CountX As Long, MaxX As Long
    Arr = Application.Transpose(Intersect(Rng, Rng.Parent.UsedRange).Value)
    For i = LBound(Arr) To UBound(Arr)
        If Arr(i) > 0 Then
            CountX = 0
        ElseIf Arr(i) < 0 Then
            CountX = CountX + 1
            If CountX > MaxX Then MaxX = CountX
        End If
    Next
    MaxNegative = MaxX
End Function

Function MaxPositive(Rng As Range) As Long
    Dim Arr, i As Long, CountX As Long, MaxX As Long
    Arr = Application.Transpose(Rng.Value)
    For i = LBound(Arr) To UBound(Arr)
        If Arr(i) < 0 Then
            CountX = 0
        ElseIf Arr(i) > 0 Then
            CountX = CountX + 1
            If CountX > MaxX Then MaxX = CountX
        End If
    Next
    MaxPositive = MaxX
End Function

Előzmény: Delila10 (24503)
Delila10 Creative Commons License 2014.03.14 0 0 24504

Nem írtam le az alkalmazását.

 

  1. Beviszed a füzetbe a két makrót.
  2. Az Adatok lapon az oszlopot táblázattá alakítod. Automatikusan felveszi a Táblázat1 nevet, amit módosíthatsz.
  3. Az Összegzés lapon a két cellába beírod a függvényt: =hánypoz(Táblázat1[Oszlop1]), ill. =hányneg(Táblázat1[Oszlop1])
Előzmény: Delila10 (24503)
Delila10 Creative Commons License 2014.03.14 0 0 24503

Két saját függvénnyel megoldhatod.

 

Function HányPoz(ter As Range)
    Dim Db, darab As Long
    For Each Db In ter
        If Db > 0 Then
            darab = darab + 1: If darab > HányPoz Then HányPoz = darab
        Else
            darab = 0
        End If
    Next
End Function



Function HányNeg(ter As Range)
    Dim Db, darab As Long
    For Each Db In ter
        If Db < 0 Then
            darab = darab + 1: If darab > HányNeg Then HányNeg = darab
        Else
            darab = 0
        End If
    Next
End Function

Előzmény: bejgleee (24502)
bejgleee Creative Commons License 2014.03.14 0 0 24502

Sziasztok,

 

Egy dinamikusan töltődő excel-be szeretnék statisztikát bevinni.

Van két fülem (és most nem a fejemre gondoltam :-)).

Ez így vicces, ezért inkább két munkalapom: "Összegzés", "Adatok".

Az "Adatok" lapra érkeznek be soronként az adatok egy külső forrásból. Tehát nem tudom előre, hogy hány sor lesz.

Van benne egy oszlop, ami pozitív és negatív értékeket is tartalmazhat.

 

Azt szeretném "on-the fly" megjeleníteni az "Összegzés" lapon, hogy hány darab pozitív érték volt egymás után és hány negatív.

Példa:

Ez az "Adatok" fülön, a nevezett oszlop értékei:

2

3

8

-1

2

-5

-6

4

 

Tehát az "Összegzés" lapon két cellában ezt szeretném látni:

Egymás utáni max pozitív értékek száma: 3

Egymás utáni max negatív értékek száma: 2

 

És nem szeretnék hozzá segédoszlopokat használni, hanem a számítást ha lehet, akkor az "Összegzés" lap két cellája végezné el.

Van ötletetek, hogyan tudnám ezt megoldani?

 

Üdv,

Zoli

 

Fferi50 Creative Commons License 2014.03.12 0 0 24501

Szia!

 

Így van, csak ekkor nem kell állandóan átkapcsolni a VBA-ra.

 

Viszont csinálhatod úgy is, hogy nem function-nak, hanem sub-nak írod meg és csak egy változónak adod az Activesheet.Usedrange.Address értékét, de nem csinálsz vele semmit tovább.

Valahogy így:

 

Sub hh()
d = ActiveSheet.UsedRange.Address
End Sub

 

Akkor a makróhoz rendelhetsz egy billentyűt és ezzel egyszerűen resetelheted a Ctrl+End számára a területet.

 

Üdv.

Előzmény: Eredő Vektor (24499)
Eredő Vektor Creative Commons License 2014.03.12 0 0 24500

{ha nem deklarálod, alapértelmezett a variant}

Előzmény: Törölt nick (24496)
Eredő Vektor Creative Commons License 2014.03.12 0 0 24499

Igen, ez működik. Bár a mechanizmust nem értem, hogy miért javul meg a vba-s parancs futtatása után. Ez u.az elvileg mint amit a 24466-ban írtál (köszönöm), csak ebben a udf-ben a volatile átszámolja az egészet újra.

 

Azért vicces, hogy egy integrált funkció működését ilyen trükkel kell úgymond visszaállítani. Mintha szándékosan nem arra programozták volna - amire egyébként a felhasználó szeretné használni.

 

Ismerem a lehetőségeket makróval egy tartomány jobb alsó sarkának megkeresésére, de ezzel sokkal egyszerűbb lenne - így sajnos nem atombiztos.

Előzmény: Fferi50 (24492)
tbando Creative Commons License 2014.03.12 0 0 24498

HUh, ez egy nagyon értékes kiegészítés. Könnyen lehetséges, hogy időnként nagy hasznát veszem. Kösz.

Előzmény: Törölt nick (24496)
Fferi50 Creative Commons License 2014.03.12 0 0 24497

Szia!

 

Ez igen, szóhoz sem tudok jutni!

Nagy-nagy gratula!

 

Üdv.

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

Most még gyorsan kipróbáltam, hogy ha a d tömböt Variant típusúként deklarálod, (Dim d(1 To 3) As Variant) akkor még az is elérhető, hogy az egyik output szám, a másik szöveg, a harmadik meg pl. Boolean, stb.

Előzmény: tbando (24494)
Törölt nick Creative Commons License 2014.03.12 0 0 24495

Azért, mert próbálkoztam, és az első kísérleteimnél valami olyan hibaüzenetet kaptam, amiből arra gondoltam, hogy talán nem látszik a függvény, vagy ilyesmi. Tudom, hogy nincs különbség, a public és a semmi között, mert alapértelmezésben public minden, hacsak másképp nem rendelkezel. De azért beleírtam, hátha. Aztán persze kiderült, hogy nem ez a baj, és továbbléptem, a public meg bent maradt.

Előzmény: tbando (24494)
tbando Creative Commons License 2014.03.12 0 0 24494

Jimmy! Nagyon köszönöm. Idáig ugyanis úgy oldottam meg a többeredményes függvényeimet, hogy ahány részeredmény kellett belőlük, annyiszor futtattam eltérő neveken, amikben csak a kimenet változott, de ez jelentősen lassította a nagyobb táblázatok kiszámítását. Szóval sokat segítettél a formulákkal. Egy kérdésem  lenne csak velük kapcsolatban. Miért Public-ként deklaráltad őket? Milyen előnye van a Public-os fgv deklarálásnak a simához képest. Kipróbáltam ugyanis sima deklarációval is a fgv-ket, ugyanúgy futottak.

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

Public Function Vízszintes_Függvényem()
    Dim d(1 To 2) As Long
    d(1) = 1
    d(2) = 2
    Vízszintes_Függvényem = d
End Function

Public Function Függőleges_Függvényem()
    Dim d(1 To 2) As Long
    d(1) = 1
    d(2) = 2
    Függőleges_Függvényem = Application.Transpose(d)
End Function

 

A1:B1 kijelöl, beleír: {=Vízszintes_Függvényem()}

A2:A3 kijelöl, beleír: {=Függőleges_Függvényem()}

Előzmény: tbando (24491)
Fferi50 Creative Commons License 2014.03.11 0 0 24492

Szia!

 

Amit a korábbi hozzászólásomban (24471) javasoltam, az alábbiak szerint módosítom (így már lesz hibajelzés).

 

Function területe()
Application.Volatile
'MsgBox "Munkalap használt területe: " & ActiveSheet.UsedRange.Address
területe = ActiveSheet.UsedRange.Address
End Function

 

Ha beirod pl. az A1 cellába a képletet  =területe(), akkor az mindig a munkalap által aktuálisan használt tartomány címét fogja mutatni.

Ha a példádban szereplő cellát törlöd, akkor azonnal változik a cella értéke és a Ctrl+End is helyesen működik.

 

Üdv.

 

 

Előzmény: Eredő Vektor (24465)
tbando Creative Commons License 2014.03.11 0 0 24491

A tömbképletes problémakör kapcsán jutott eszembe az a kérdés, hogy lehet-e olyan udf függvényt csinálni, ami több eredményt is hajlandó kiírni? Hasonlatosan mondjuk a Lin.Ill-hez, amivel több korrelációs paraméter is kiíratható. Hogy lehet ilyen függvényt csinálni? 

Delila10 Creative Commons License 2014.03.11 0 0 24490

Szívesen. :)

Előzmény: KelemenGy (24489)
KelemenGy Creative Commons License 2014.03.11 0 0 24489

Köszi!

Előzmény: Delila10 (24488)
Delila10 Creative Commons License 2014.03.11 0 0 24488

Az új tartománynak nevet adsz, célszerűen szolggk-t.

 

A hivatkozás:

=ofszet(szolggk!$a$1,0,0,darab2(szolggk!$a:$a),1)

 

Ha lenne címsorod, akkor:

=ofszet(szolggk!$a$2,0,0,darab2(szolggk!$a:$a)-1,1)

 

2010-ben az ofszet helyett eltolás a függvény neve.

A darab2 függvény az oszlopban bármilyen adattal kitöltött mezők darabszámát adja, ezért kevesebb adatot mutat az érvényesítés, ha üres cellák is vannak az utolsó kitöltött cella fölött.

 

Jobb megoldás, ha kijelölöd a jelenlegi A1:A22 tartományt, a Ctrl+r tartománnyá alakítja. Még mindig kijelölve a szerkesztőléc bal oldalán, ahol a kiválasztott cella címe látszik, megadod a nevet, és ezt írod be (illetve választod ki F3-mal) az érvényesítésben.

Előzmény: KelemenGy (24486)
KelemenGy Creative Commons License 2014.03.11 0 0 24487

Egyébként érdekes, mert a listák forrástartományai mindenhol tartalmaznak üres sorokat, cellákat, aztán van, ahol működik az üres cellák mellőzése kapcsoló, van ahol nem (pl.: szolggk lap, in lap).

Előzmény: KelemenGy (24486)
KelemenGy Creative Commons License 2014.03.11 0 0 24486

Volt vele meló... :)

 

"ehelyett lehetne az ofszetes névadás, vagy még jobb a tartományt táblázattá alakítani. Mindkét esetben a bővítés, törlés után a tartomány követi az oszlopban lévő adatok darabszámát."

 

A második mondatot értem, tetszik is a lehetőség. Az első mondat értelmében viszont nem vagyok biztos, lehetne azt egy kicsit bővebben? :)

Mondjuk pont a szolggk annyira nem fontos, mert az éles táblában van tizenpár szolgálati kocsi, viszonylag konstans állomány, de van olyan segédtábla, ahol hasznos a bővítési lehetőség.

Előzmény: Delila10 (24483)
tbando Creative Commons License 2014.03.11 0 0 24485

Ez a duplaHA megoldás nagyon tecc.  Igazán kreatív. Elraktározom mint  mintát.

Előzmény: Fferi50 (24475)
tbando Creative Commons License 2014.03.11 0 0 24484

Tök érthető voltál. Sokat tanultam belőle.  A válaszod a magamfajta laikusnak egy nagy lépés az excel lelkivilágának a megértéséhez. Kösz.

Előzmény: Törölt nick (24469)
Delila10 Creative Commons License 2014.03.11 0 0 24483

Jó nagy munka lehetett.

 

Volt itt szó a tartományok rugalmasságáról. Pl. a szolgálati gk. érvényesítése most egy halom üres (meg nem nevezett) gk-t is felhoz, ehelyett lehetne az ofszetes névadás, vagy még jobb a tartományt táblázattá alakítani. Mindkét esetben a bővítés, törlés után a tartomány követi az oszlopban lévő adatok darabszámát.

Előzmény: KelemenGy (24481)
Fferi50 Creative Commons License 2014.03.11 0 0 24482

Azért nem volt kis munka ezt így összehozni.

:)

 

Előzmény: KelemenGy (24481)
KelemenGy Creative Commons License 2014.03.11 0 0 24481

Azért megmutatom, miről is van szó:

 

https://www.dropbox.com/s/tj8erz3uu7vr3vr/ures_UJ_jo_kulfoldi%20kikuldetes_teszt.xlsx

 

A 2_UTASÍTÁS munkalap C8 és C9-ben van megcsinálva az elnevezett tartományra hivatkozás, a többi közvetlen hivatkozás más munkalapokra.

Előzmény: KelemenGy (24480)
KelemenGy Creative Commons License 2014.03.11 0 0 24480

Kipróbáltam, műxik. Köszönöm!

Előzmény: Fferi50 (24479)
Fferi50 Creative Commons License 2014.03.11 0 0 24479

Szia!

 

Próbáld ki, ha nem működik, akkor tedd fel a mintát légy szíves.

 

Üdv.

 

PS. Persze az érdekességek engem is érdekelnek.

 

 

Előzmény: KelemenGy (24478)
KelemenGy Creative Commons License 2014.03.11 0 0 24478

Ööö... Asszem értem :)

 

Najó, viccen kívül, köszönöm az ötletet, megpróbálom így.

 

Közben csináltam egy szenzitívadat-mentesített verziót. Kéred érdekességnek?

Előzmény: Fferi50 (24477)
Fferi50 Creative Commons License 2014.03.11 0 0 24477

Szia!

 

Az adatérvényesítés "érdekesen" működik a 2010-ben. Lehetséges közvetlenül hivatkozni más munkalapon levő tartományra is, míg a korábbi verziókban ez nem így volt.

Ezen a fórumon is volt már erről szó, most hirtelen nem találom mikor.

Azt hiszem az a megoldás, hogy az érvényesítési tartományt el kell nevezni és névvel kell hivatkozni rá az adott cella érvényesítési szabályában.

Úgy emlékszem, ez megoldja a problémát.

 

Üdv.

 

Előzmény: KelemenGy (24476)
KelemenGy Creative Commons License 2014.03.11 0 0 24476

Sziasztok!

 

Ismét egy érdekességgel jönnék. Nem volt még energiám kiszedegetni a nemnyilvános részeket, így mintafájl nincs, de belefutottam egy egészen érdekes jelenségbe. Adott egy soklapos excel-tábla, tulképp egy kitöltendő űrlap az egész egy nagy rakás képlettel és legördülős-kiválasztós menükkel súlyosbítva. Kiküldetés-elrendelő alapvetően. Úgy műxik, hogy beleírod, hogy ki megy, hová megy, mivel megy (saját, kocsi, repülő, tengeralattjáró), mennyi útielőleget vesz fel, hol fog megszállni, stb. Ez idáig két munkalap. Ezt a táblázat összesíti, átemeli egy elszámolásos lapra és ad egy összeget, hogy mennyibe fog kerülni az út. Két további munkalapon lehet rögzíteni a valósan felmerült költségeket (magánszemélynél, partnerszervezetnél), majd ezt is átveszi az elszámolásos lapra, kivonja a felvett előlegből a valós költséget és megadja, hogy kell-e még valamit fizetnie annak, aki utazott, vagy jár még neki vissza zsé, esetleg nulszás. Eddig faszányosan működik is minden, számol ahogy kell.

 

Viszont, ami érdekes, az adatérvényesítős legördülő menük nem minden gépen működnek. Eredetileg 2010-es excelben készült a tábla és addig minden szép is, amíg 2010-zel is van megnyitva (mondjuk hálózati meghajtóról). Abban a pillanatban, ahogy 2007-essel próbáljuk megnyitni, egyszerűen nyoma vész az összes legördülőnek. Kipróbáltam fordítva is, visszaépítettem az adatérvényesítéseket 2007-ben. Így a 2007-ben már működik és ha 2010-ben megnyitom, ott is. Viszont probléma itt is akad, mert ha rámentek a fájlra a 2010-ben, akkor a 2007-ben ugyanazt a fájlt visszanyitva ismét nem működnek a legördülők.

Fferi50 Creative Commons License 2014.03.11 0 0 24475

De azért nem feltétlenül kellene így túlbonyolítani:

 

=DARAB(HA(A1:A20>B1:B20;HA(B1:B20>0;1;"X");"X"))

 

tömbképletként.  Tulajdonképpen ez az ÉS feloldása a HA függvények beágyazásával.

 

Ps.

Milyen jó, hogy nő a hozzászólásaim száma (igaz, némi "butasággal" vegyítve:))!

Előzmény: Fferi50 (24474)
Fferi50 Creative Commons License 2014.03.11 0 0 24474

Ez lesz a jó képlet:

 

=DARAB(HA(((A3:A6>B3:B6)=(B3:B6>0));HA(A3:A6>B3:B6;1;"X");"X"))

 

természetesen tömbképletként.

 

Ps.

Éhgyomorra lassabb a gondolkodásom - de már megreggeliztem.:)

Előzmény: Fferi50 (24473)
Fferi50 Creative Commons License 2014.03.11 0 0 24473

Sajnos akkor nem jó eredményt ad, ha mindkét feltétel hamis. (A<B és B<0)

Előzmény: Fferi50 (24472)
Fferi50 Creative Commons License 2014.03.11 0 0 24472

Szia!

 

Próbáld ki ezt így:

=DARAB(HA((A1:A20>B1:B20)=(B1:B20>0);1;"X"))

tömbképletként természetesen.

 

Üdv.

Ps. A DARAB a logikai értékeket nem számolja, csak a számokat.

Előzmény: tbando (24463)
Fferi50 Creative Commons License 2014.03.11 0 0 24471

Szia!

 

Ezt a függvényt másold be egy modulba:

 

Function területe()
Application.Volatile
MsgBox "A munkalap által használt terület: " & ActiveSheet.UsedRange.Address
'ActiveCell.Value = ActiveSheet.UsedRange.Address
End Function

 

Ezután egy tetszőleges cellába (én az A1-be írtam be) írd be: =területe()

 

Minden alkalommal, amikor beírsz egy cellába, akkor kiírja munkalap által használt terület címét egy üzenetben.

Ha törlöd a legutolsó celládat a javasolt tesztedben, látni fogod, hogy már nincs benne a területben és a Ctrl+End is jól működik utána.

 

Ha nem akarod hogy üzengessen, akkor cseréld fel a kommentelt sorokat:

Function területe()
Application.Volatile
'MsgBox "A munkalap által használt terület: " & ActiveSheet.UsedRange.Address
ActiveCell.Value = ActiveSheet.UsedRange.Address
End Function

 

Ekkor nehezményezni fogja, hogy körkörös a hivatkozás, erre mond  azt, hogy OK.

 

Most nem üzenget tovább, de a Ctrl+End jól fog működni. Igaz, a függvényt tartalmazó cellában az érték hiba jelenik meg, de ez ne zavarjon.

 

Üdv.

Előzmény: Eredő Vektor (24465)
Törölt nick Creative Commons License 2014.03.11 0 0 24470

Kiegészítés:

Vagyis az ÉS függvény nem soronként hasonlítja össze a két tömböt, hanem a két tömb elemeinek unióján végez el egy logikai ÉS műveletet, és eredményül egyetlen értéket ad vissza.

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

Itt ez a képlet:

{=Darab(es(a1:a20>b1:b20;b1:b20>0))}

 

Ahhoz, hogy a DARAB függvény össze tudjon számolni dolgokat, ahhoz neki egy tartomány vagy tömb kell bemenő paraméternek.

Tehát arra volna szükség, hogy az

ÉS(a1:a20>b1:b20;b1:b20>0)

képlet eredménye egy tömb legyen. Na ez az, ami nem teljesül.

Miért nem?

Teszteljük a részeket egyenként. Kijelölöm D1:D20-at, beírom az alábbi képletet:

{=A1:A20>B1:B20}

D1:D20-ban megjelenik a helyes eredmény-tömb. Tehát a sima reláció-vizsgálat tömböt ad ki.

Gondolom, ezek után a másik összehasonlítás is működni fog, de azért letesztelem azt is.

Kijelölöm E1:E20-at, és beleírom: {=B1:B20>0}

E1:E20-ban megjelenik a helyes eredmény-tömb.

 

Kijelölöm most a G1:G20-at, és beírom: {=ÉS(D1:D20;E1:E20)}

Hát ez nem pont azt hozza, amire számítok. Ha terv szerint működne, akkor

D1-et E1-gyel hasonlítaná, és az eredmény menne G1-be

D2-et E2-vel hasonlítaná, és az eredmény menne G2-be

stb.

Ehelyett mindenhol HAMIS értéket látok.

Aztán próbálkozok még egy kicsit az értékek módosítgatásával, és arra jutok, hogy G1:G20-ban az összes cella értéke mindig ugyanaz, ha az egyik változik, akkor változik a többi is. IGAZ értéket csak úgy tudok beletenni, ha D1:E20 tartományban minden cella értéke IGAZ.

Vagyis az ÉS függvény nem soronként hasonlítja össze a két tömböt, hanem a két tömb elemeinek unióján végez el egy logikai ÉS műveletet.

 

Nemtom elég érthető volt-e...

Előzmény: tbando (24468)
tbando Creative Commons License 2014.03.11 0 0 24468

Nekem nem sikerült az ÉS-t bemenő paraméternek sem elfogadtatni. Felraknál rá egy példát?

 

Másfelől nem értem azt sem, hogy miért fontos az, hogy  ÉS nem ad tömböt eredménynek.  Milyen eredménytömbre gondolsz? Én nem látom hogy milyen tömbben kéne az eredménynek megjelennie. 

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

Bocs, mégiscsak tudja az ÉS a tömböt, mármint elfogadja bemenő paraméternek, de nem ad ki tömböt eredményként.

Előzmény: tbando (24463)
Fferi50 Creative Commons License 2014.03.10 0 0 24466

Szia!

 

Szerintem találtam egy sokkal egyszerűbb megoldást:

 

Csináld meg az általad javasolt kísérletet. Valóban a törlés után a Ctrl+End még mindig azt a cellát "találja meg" amit már töröltél.

 

Menj át a VBA ablakba - (Fejlesztőeszközök - visual basic  illetve Alt+F11).

 

Az immediate ablakba írd be, hogy

 ?activesheet.usedrange.address. Erre kiírja a tartomány címét, amiben már nem lesz benne a töröld cellád.

 

Ha utána visszamész az Excelbe, akkor már jól működik a Ctrl + End!!!

 

Várom az eredményed!

 

Üdv.

Előzmény: Eredő Vektor (24465)
Eredő Vektor Creative Commons License 2014.03.10 0 0 24465

2010-es. Tényleg nem megy nálam - illetve sokan leírják a problémát sok helyen. Erre ajánl az ms egy ingyenes excel bővítményt, ami ezt kitakarítja. (Nekem nem tetszett...)

Előzmény: Fferi50 (24462)
Törölt nick Creative Commons License 2014.03.10 0 0 24464

Nekem úgy tűnik, hogy az ÉS függvény nem kezeli a tömböket. Van ilyen. Az ÖSSZEFŰZ sem tudja.

Előzmény: tbando (24463)
tbando Creative Commons License 2014.03.10 0 0 24463

A tömbképletekkel kapcsolatos ismereteim hiányosságaira hívta fel a figyelmemet az alábbi példa.  

 

A feladat az lenne, hogy meg kell határozni az A1:B20 tartományban azon rekordok számát amelyekben A>B és B>0. Ezt ez a tömbképlet primán számítja:

 

{=szum((a1:a20>b1:b20)*1*(b1:b20>0))}

 

De miért nem számítja az alábbi? Szerintem ennek is kéne.

 

{=Darab(es(a1:a20>b1:b20;b1:b20>0))}

Fferi50 Creative Commons License 2014.03.10 0 0 24462

Viszont ha több "üres" cella is van az értékes adatok és a "lastcell" között, akkor bizony az adott sorokat és oszlopokat fizikailag törölni kell - persze az adattartományon kívüli területre értem.

 

Nálam biztosan működik a 2010-es verzióban.

 

 

Előzmény: Eredő Vektor (24460)
Fferi50 Creative Commons License 2014.03.10 0 0 24461

Szia!

 

Milyen excel verziód van. Mert nálam a 2010-esben elég a cellára egy delete gombot nyomni (vagy az adott sort/vagy oszlopot törölni).

 

Üdv.

Előzmény: Eredő Vektor (24460)
Eredő Vektor Creative Commons License 2014.03.10 0 0 24460

Sajnos nem elég.

 

http://support.microsoft.com/kb/244435

 

 

Előzmény: Fferi50 (24458)
Fferi50 Creative Commons License 2014.03.10 0 0 24459

Szia!

 

Igen, ez pontosan ugyanaz, a specialcells(xllastcell) ugyanazt a tartományt használja, mint a usedrange.

 

Üdv.

Előzmény: tbando (24455)
Fferi50 Creative Commons License 2014.03.10 0 0 24458

Szia!

 

Szerintem elég egy delete billentyűt nyomni a r30 cellára. (Ki van próbálva.)

 

Üdv.

Előzmény: Eredő Vektor (24452)
Fferi50 Creative Commons License 2014.03.10 0 0 24457

Szia!

 

Segít a nyomtatási kép is (pl. activesheet.printpreview a makróban) és ha jó amit látsz, akkor ki is nyomtatható (sőt előtte beállíthatod amit nem jól látsz.

Másrészt viszont a Pagesetup.Printarea tulajdonságot is lehet állítani ám.

 

Üdv.

Előzmény: tbando (24453)
tbando Creative Commons License 2014.03.10 0 0 24456

A PDF nyomtató alatt a PDF Creatort érted? Mert az rajta van a gépemen, de mivel más okból volt fontos feltelepítenem, így eszembe se jutott, hogy próbanyomtatásra is alkalmas lehet. Köszi a tanácsot.

Előzmény: Törölt nick (24454)
tbando Creative Commons License 2014.03.10 0 0 24455

Ez talán analóg az xllastcell gyakran meglepő eredményeivel, amit ha jól emlékszem, itt is kitárgyaltunk. És úgy dereng, hogy a normál halandók szerinti eredményért nem az r30 cella tartalmát kell törölni, hanem magát 30. sort. Esetleg elég lehet csak az r30 cella delete-je.   

Előzmény: Eredő Vektor (24452)
Törölt nick Creative Commons License 2014.03.10 0 0 24454

Telepíts egy PDF nyomtatót, és tesztelésképpen először mindig arra nyomtasd ki.

Előzmény: tbando (24453)
tbando Creative Commons License 2014.03.10 0 0 24453

Kösz a gondolatmenetet. Egyelőre emésztem :)))

 

A rejtett tartományok közül idáig csak a Nyomtatási terület elnevezésű szívatott meg jó párszor. És mivel ritkán nyomtatok, még ma sem vágom igazán, hogyan lehet elkerülni, hogy esetenként ne pazaroljak el egy csomó  papírt, míg végül sikerül :))).

Előzmény: Fferi50 (24451)
Eredő Vektor Creative Commons License 2014.03.10 0 0 24452

Szia,

Igen, a halandó emberek - mint Te is - így képzelik el :)

 

 

Próbáld ki:

 

1. a1:k20 tartományt töltsd fel akármivel.

2. ctrl+end

3. szuper!

4. r30 cellát töltsd fel akármivel

5 ctrl+end

6. szuper!

7. r30 cellát töröld ki. (törölhetsz sort, oszlopot, formázást - akárhogy bármit)

8. ctrl+end

9. nem szuper!

 

Előzmény: Fferi50 (24448)
Fferi50 Creative Commons License 2014.03.10 0 0 24451

Szia!

 

Nem csak az autoszűrő, hanem az advanced/irányított/speciális szűrő is "fixálja/módosítja" a szűrt tartományt. Emlékezz vissza, ha egy szűrés (nem auto) után ismét szűrni szeretnél, az excel a párbeszéd ablakban felajánlja a szűrendő tartományt és a szűrő tartományt is. Szerintem itt is inkább az irányított szűrő volt a hibás (mivel van kritérium tartomány is).

A  megoldásra részben véletlenül, részben tudatosan jöttem rá, illetve régebbi emlékeimet idéztem fel.

A véletlen: meg akartam nézni, hogy a szűrés is úgy viselkedik-e mint a rendezés és kiderült hogy nem. Aztán az is kiderült, hogy a szűrés után a rendezés is "helyre jött".

A neveket már előtte megnéztem, utána pedig láttam, hogy módosul a FilterDatabase-hez tartozó tartomány.

 

A rejtett név azt jelenti, hogy a névkezelőben nem jelenik meg a név és a hozzá tartozó tartomány, mivel ennek a tartalmát és hivatkozását csak a rendszer változtathatja meg a műveleteken keresztül (built-in name az angol verzióban, de nevezheted akár rendszer által kreált névnek is), azaz read-only a tartalma. Miért pont a FilterDatabase ilyen? Talán Redmond tudja....

 

Szerintem máskor is találkozhattál volna a jelenséggel. Itt azért tűnt fel, mert valami miatt - pl. sorok beszúrás - nem az adattábla első sorában kezdődött az excel szerinti adatlista. (Talán "játszottál" az irányított szűrővel valamit esetleg és nem az egész táblát használtad, csak egy részét.)

 

Egyébként az alábbi módon megnézheted a többi Filterdatabase-t is:

for each nm in activeworkbook.Names:?nm.name,nm.referstorange.address(external:=true):next

 

Ezzel láthatod, hogy az egyes munkalapokon hol volt az utolsó szűrőzött "adatállomány" helye.

 

Üdv.

Ps.

Egyébként, ha adatot akarsz beolvasni MS Query-vel Excel munkafüzetből és beállítod, hogy látsszanak a rendszertáblák is, ott is láthatod pl. a FilterDatabase -t is.

 

Előzmény: tbando (24449)
tbando Creative Commons License 2014.03.10 0 0 24450

Kösz neked is, hogy foglalkoztál a problémámmal.

Előzmény: Eredő Vektor (24446)
tbando Creative Commons License 2014.03.10 0 0 24449

Kösz.  Bravúros megoldás, sosem jöttem volna rá. Én csak odáig jutottam mint Eredő Vektor javasolja itt fölötted, hogy átmásoltam a táblázatot egy új füzetbe, ahol már normálisan müködödött. Mindazonáltal nem értem ezt az autószűrős fixálást. Milliószor használtam már az autószűrőt és még sosem csinált semmi galibát. (Vagy csak nem vettem észre?)  Ezt a lapot egy 7 lapos füzetből vettem át, amelyben néhány lapon használtam ugyan az autószűrőt, de érdekes módon azokon a lapokon a rendezési utasítás normálisan jelöli ki a táblázatokat, egyedül ez a lap a gubancos.

 

És végül 2 kérdés:

  1. Honnan tudtad, hogy a szűrő bekapcs/kikapcs resetálja Filterdatabase-t?  Mert én még ha meg is találtam volna a fixálást, akkor sem tudtam volna megszüntetni.
  2. Mi az hogy rejtett név? Még sosem hallottam ilyenről?
Előzmény: Fferi50 (24444)
Fferi50 Creative Commons License 2014.03.09 0 0 24448

Szia!

 

Ha megnézed a munkalap által használtnak tekintett tartomány címét VBA -ban (pl. activesheet.usedrange.address), a Ctrl+End ugyanennek a tartománynak az utolsó cellájára ugrik.

Attól, hogy te egy cellát üresnek látsz, még nem biztos, hogy az excel szerint is az. Pl. nemrég volt éppen ezen a fórumon egy jelenség, amikor üres(nek látszó) cellákat "helytelenül" rendezett. Ott az derült ki, hogy egy kifejezés eredményeként "" (azaz üres sztring) "csücsült" a cellában, ami semmi más módon nem volt kideríthető, csak az üres függvénnyel.

Ugyanígy a formázott cella is, ha nem látszik is valami miatt a formázása (pl. csak a tartalma van törölve), akkor is a használt tartomány részét képezi.

 

Tehát ha a Ctrl+End nem oda ugrik, ahová szerinted kellene, gyanakodj, hogy ott nem üres cellák vannak valahol, csak annak látszanak. (Nyilván, ha úgy gondolod, hogy ott nem "kell" adatnak lennie, töröld a "gyanús" sorokat/oszlopokat és helyreáll a "rend".)

 

Üdv.

Előzmény: Eredő Vektor (24447)
Eredő Vektor Creative Commons License 2014.03.09 0 0 24447

Ügyes.

A ctrl+end miért nem mindig szokta úgy megtalálni az utolsó használt cellát, ahogy az meg vagyon írva?

Erről tudsz esetleg valamit?

 

 

 

Előzmény: Fferi50 (24444)
Eredő Vektor Creative Commons License 2014.03.09 0 0 24446

>>Viszont ha az egészet átmásolom egy szűz munkalapra, akkor meggyógyul.

Ezt nem szó szerint értem, hanem csak az "xy" tartományt, tartományokat amire szükség van.

Előzmény: Eredő Vektor (24445)
Eredő Vektor Creative Commons License 2014.03.09 0 0 24445

Ha nem bug, akkor valami lehet ott az első négy sorban, amit nem látsz - de felülbírálja a sorbarendezés tartományát...

 

Ennél az esetnél is az lehet a metodika, mint amikor nyomsz egy ctrl+end-et - és "Kenyába" ugrik a kurzor. (Általánosságban beszélve, nem ennél a munkafüzetnél) A valójában használt tartomány környékét törölheted bárhogy - nem az utolsó kitöltött cellára fog ugrani - mert a cellákban maradnak olyan információk amiket nem látsz, de "Ő" igen.

 

Viszont ha az egészet átmásolom egy szűz munkalapra, akkor meggyógyul. A fent leírt jelenség is - és a Tiéd is.

Előzmény: tbando (24443)
Fferi50 Creative Commons License 2014.03.09 0 0 24444

Szia!

 

Annyi történt, hogy a legutóbb használt szűrésed átírta az adattartomány címét:

Ha beírod ezt a sort az immediate panelba:

for each nm in activeworkbook.Names:?nm.name,nm.refersto:next

látni fogsz egy ilyen sort:

Panel!_FilterDatabase       =Panel!$A$14:$ZP$65540

Ezt nem látod a nevek között, mert rejtett.

Semmi mást nem kell tenned, mint akárhol a munkalapon bekapcsolni majd kikapcsolni az autoszűrőt.

Ezután mindent megfelelően fog értelmezni az excel.

 

Üdv.

Ps.

Azt ne kérdezd, hogy mikor csináltad a szűrést így, mert azt utólag már nem lehet megállapítani.

Előzmény: tbando (24443)
tbando Creative Commons License 2014.03.09 0 0 24443

Kösz hogy megnézed. Felraktam a data.hu-ra

 

Letöltőlink :

http://data.hu/get/7500383/elesit-10x19.xlsm

Előzmény: Fferi50 (24442)
Fferi50 Creative Commons License 2014.03.09 0 0 24442

Szia!

 

Megmutatnád a füzetet?

 

Üdv.

Előzmény: tbando (24441)
tbando Creative Commons License 2014.03.09 0 0 24441

Van egy táblázatom. Sorba akarom rendezni.  Belépek a táblázatba. Majd: Adatok/Rendezés és ekkor a legnagyobb meglepetésemre a rendezendő tartománynak nem a teljes táblázatot jelöli ki ahogy illenék neki, hanem a 4. sorától kezdi. Hogyan lehetne az elállítódást resetálni?

 

A manuális táblázatkijelölés: oké, de a rákövetkező automatikus megint a 4.sortól kezdi.

 

A táblázatbeli 'activecell.currentregion.select'  szintén korrekt kijelölést ad. 

 

Új füzet nyitás: Normális kijelölés. Tehát a problémás füzetben sikerült valamit elállítanom. Esetleg valakinek valami ötlete, hogy mit? De fontosabb lenne a resetálás módja.

 

Fferi50 Creative Commons License 2014.03.09 0 0 24440

Szivesen, máskor is.

 

Előzmény: Balu424 (24439)
Balu424 Creative Commons License 2014.03.09 0 0 24439

NAGYON SZÉPEN KÖSZÖNÖM Fferi50 -nek a seítséget, mellyel nagyban megkönnyítette a munkámat!!!

Ezoverzum Creative Commons License 2014.03.08 0 0 24438

Hali

 

Valóban megírta már, csak variáltam rajta és azt hittem a chdir-nek valamiért maradnia kell.

Azt hiszem most már tényleg értem.

Köszi

Előzmény: Fferi50 (24437)
Fferi50 Creative Commons License 2014.03.08 0 0 24437

Szia!

 

Jimmy megírta már (24406), hogy mi a teendő. Nem kell chdir, írd be a teljes útvonalat a mentéskor.

 

Üdv.

Előzmény: Ezoverzum (24436)
Ezoverzum Creative Commons License 2014.03.08 0 0 24436

Sziasztok

 

Ötleteket szeretnék kérni arra, hogy mit írjak az alábbi vba kódhoz vagy mit írjak át, hogy a makró által készített mappát a megadott névvel BIZTOSAN a D:EZOVERZUMsz mappába mentse?

Néha gondol egyet és a C: Dokumentumokba menti el. Nem értem miért.

 

   

      ChDir "D:EZOVERZUMsz"

      SzámlaFile = "szl-A" + Format(szsz) + ".xlsx"               
      ActiveWorkbook.SaveAs Filename:=SzámlaFile, FileFormat:= _
        xlOpenXMLWorkbook, CreateBackup:=False

 

      Workbooks(SzámlaFile).Close

 

 

 Előre is köszönöm a segítségeket.

Üdv

X

Fferi50 Creative Commons License 2014.03.07 0 0 24435

Bocs még egy félmondat:

 

E helyett:

"Kijelölöd a táblázatot, kezdőlap - formátum - automatikus oszlopszélesség, másolás."

Kijelölöd a táblázatot, másolás - irányított beillesztés - értéket  - kezdőlap - formátum - automatikus oszlopszélesség, másolás.

 

 

Előzmény: Fferi50 (24434)
Fferi50 Creative Commons License 2014.03.07 0 0 24434

Szia!

 

Az excelben a következőket kellene végigcsinálnod:

 

Az eredeti adataidat másold át egy új munkalapra (legyen ez a Munka2) és a másolaton dolgozz - de lesz még egy harmadik munkalap is mindjárt, úgy gondolom.

Én a neveket és a közterület megnevezését biztosan összeraknám egy oszlopba, ezért írtam, hogy lesz harmadik munkalap:

legyen ez a Munka3, a továbbiakban ide dolgozunk: (A képleteket először a második sorba írd be végig és utána húzd le, ameddig adatod van a Munka2-ben.)

pl. Munka3 A2 cellába: = Munka2!A2 & " " & Munka2!B2. Ezt a képletet végighúzod az A oszlopon.

    Munka3 B oszlop üresen marad!

    Munka3 C oszlop      = Munka2!$C$1   végig az egész oszlopon

    Munka3 D2 cella       = Munka2!C2   végig az egész oszlopon

    Munka3 E oszlop       =Munka2!$D$1  végig az egész oszlopon

    Munka3 F2  cella       =Munka2!D2  végi az egész oszlopon

és így tovább.

Ennek az eredménye, hogy minden adat előtt ott lesz a fejléce az előző oszlopban (ha jól csináltad, figyelj a $ jelekre).

Ha ezt végicsináltad az egész táblázattal, akkor formázd meg:

Első oszlop félkövér, a fejlécekkel teli oszlopok dőlt betű. (Ezeket egyszerre is ki tudod jelölni a ctrl-t nyomva tartva lépegetve csak a fejléc oszlopokon végig.)

Kijelölöd a táblázatot, kezdőlap - formátum - automatikus oszlopszélesség, másolás.

Átmész a wordbe:

Irányított beillesztés - HTML formátum!!!

Kijelölöd a beillesztett táblázatot.

Táblázateszközök - elrendezés - szöveggé alakítás - cellahatároló tabulátorjel

Kijelölés marad!

Beszúrás - táblázat - szövegből táblázat - oszlopok száma 2 - cellahatárolójel tabulátor

Táblázateszközök - elrendezés - szöveggé alakítás - cellahatároló tabulátorjel

 

Most lényegében megvan a word listád. Még szépítheted: a tabulátorjelet másra cserélheted, de vigyázz, az címsorokban is van tabulátorjel (Ha bekapcsolod a bekezdésjel megjelenítést, akkor láthatod.)

 

Szerintem megcsinálni gyorsabb, mint leírni volt. (Pláne, hogy az első leírásomat elküldte a semmibe a blogmotor és kezdhettem előlről).

 

Remélem, sikerülni fog.

Ha bármi gondod lenne, írj légy szíves.

 

Üdv. 

Előzmény: Balu424 (24432)
Fferi50 Creative Commons License 2014.03.07 0 0 24433

Szia!

 

Az első sor félkövér még megoldható olyan módon, hogy az Excelben megformázod, majd a beillesztésnél a HTML formátumot választod.

Utána kijelölöd a táblázatot és megkeresed a szöveggé alakítást (nekem a táblázateszközök - elrendezésben van).

Ezután már "játszhatod" a keres-cserél  műveleteket, ahogyan az előbb írtam.

 

Azt még nem tudom, hogy a fejrovatokat hogyan lehetne átvariálni, de ezt szerintem excelben sokkal könnyebb, még dolgozom egy kicsit rajta, hátha sikerül gyorsan.

 

Üdv.

 

 

Előzmény: Balu424 (24432)
Balu424 Creative Commons License 2014.03.07 0 0 24432

szia Fferi50

 

idáig király!!

 

Csak úgy kellene, hogy az első sor félkövér legyen, utána az oszlopok pedig dőlt címszavak legyenek, melyek ismétlődnek.

 

(lásd a mellékelt word képet)

 

Vagy küldjem el az excel tábla és a word kis részletét, hogy jobban láthasd és értelmezd?

 

Előzmény: Fferi50 (24431)
Fferi50 Creative Commons License 2014.03.07 0 0 24431

Szia!

 

Egy ötlet:

 

Nyitva van az exceled és a wordben van egy üres dokumentumod.

 

Az excelben kijelölöd a teljes táblázatot.

Másolás.

Átmész a word-be.

Irányított beillesztés - formázatlan unicode szöveg.

Kijelölve hagyod a beillesztett szöveget.

Ezután csere:

 Keresett szövegbe - speciális karakterekből kiválasztod a tabulátor jelet

 Csere erre - speciális karakterekből kiválasztod a kézi sortörés jelet.

Összes cseréje.

 Keresett szövegbe  - speciális karakterekből kiválasztod a kézi sortörés jelet 2x egymás után

 Csere erre- marad a kézi sortörés

Összes cseréje - ezt addig nyomod, amíg ki nem írja, hogy 0 karaktert cserélt.

 

A többi már csak formázás kérdése (illetve némi ügyeskedés, ha valami nem kívánatosat szétválasztott volna).

 

Üdv.

Előzmény: Balu424 (24430)
Balu424 Creative Commons License 2014.03.07 0 0 24430

sziasztok

 

Lenne egy nagy gondom, amit meg kellene oldanom sürgősen.

Van egy excel táblázat, melynek adatait (sorait) Word oszloppá kellene alakítani.

 

   

 

Tudom van egy olyan, hogy Irányított beillesztés s transzponálás, de majdnem 3000 adatot kellene áttenni egyenként.  Hogy lehetne ezt gyorsan "automatizálva" megoldani?

 

Remegve várom a válaszokat

Fferi50 Creative Commons License 2014.03.07 0 0 24429

Szia!

 

Talán mégis a sorok elrejtése körül kellene keresgélni.

Másrészt viszont próbáld részenként futtatni a programjaidat és megvizsgálni, hogy megvannak-e még "akik el szoktak veszni".

Persze ez egy kicsit hosszú lehet, de másképp aligha lehet kiszűrni a bajt okozó műveletet.

 

Üdv.

 

 

Előzmény: Zeugniss (24428)
Zeugniss Creative Commons License 2014.03.07 0 0 24428

Szia!

 

Hála neked, sikerült visszahozni a magasság beállításával. Köszönöm a segítséget!


Most bennthagyok egy makrót, ami a magasságot visszaállítja, így ha később megint elveszne, akkor könnyen tudom majd javítani.
Nem akarok telhetetlen lenni, ez így már működőképes, de ha esetleg van arra ötlet, hogy hogyan lehet ezt a problémát a jövőben elkerülni, azt is szívesen fogadnám.

 

Üdv!

Előzmény: Zeugniss (24427)
Zeugniss Creative Commons License 2014.03.07 0 0 24427

Szia!

 

Lecsekkoltam a magasságot és szélességet. A magassága 0 lett valahogy. Most megpróbálom javítani. :)

 

 

 

Előzmény: Fferi50 (24425)
Törölt nick Creative Commons License 2014.03.07 0 0 24426

Lenyitod a rövid dátum mezőt, és ott vannak lehetőségek, többek közt

éééé-HH-nn

is. Nálam legalábbis...

Előzmény: HHjj (24419)
Fferi50 Creative Commons License 2014.03.07 0 0 24425

Szia!

 

Ezzel a makróval, ha lépésenként hajtod végre a makrót és az msgbox után kérdezd le a méreteit, ahogyan az előbb írtam.

 

Üdv.

Előzmény: Zeugniss (24424)
Zeugniss Creative Commons License 2014.03.07 0 0 24424

Szia!

 

Igen, azt írta, hogy látszik. szóval elvileg ott kéne lennie. Hogy "elbújt-e" valahol azt már csekkoltam. Most a mérettel lehetne szórakozni. Mivel nem látom amgát a vezérlőt, jól gondolom, hoyg a méretét is csak egy másik makróval tudnám állítani?

Üdv!

Előzmény: Fferi50 (24421)
Fferi50 Creative Commons License 2014.03.07 0 0 24423

Szia!

 

A mozgatás a top és a left paraméter megadásával történik.

 

pl.  with ActiveSheet.Shapes("Checkbox1")

                .top=range("B5").top

                .left=range("B5").left

      end with

 

A shapes("név") a megfelelő a keresésre.

 

Üdv.

Előzmény: Zeugniss (24422)
Zeugniss Creative Commons License 2014.03.07 0 0 24422

Szia!

 

Van egy olyan ötletem, hogy egy makróval kijelölném az "elveszett" vezérlőt és bemásolnám egy adott cellához. Ezzel elvileg azt akarnám ellenőrizni, hogy tuti itt van-e valahol.

Megírtam a makrót hozzá, de sajnos nem hoz eredményt. Mit gondolsz, nem lenne célszerű ebben az irányban keresni a megoldást? Esetleg másolás helyett mozgatással?

 

Én ennyit írtam be, de sajnos eredményt nem hoz. 


    ActiveSheet.Shapes.Range(Array("Image1")).Select
    Selection.Copy
    Range("R1854").Select
    ActiveSheet.Paste

 

Lefuttattam úgy is, hogy az Image1 helyén CheckBox1 volt. Azt rendesen átmásolta.

 

Üdv!

Előzmény: Zeugniss (24420)
Fferi50 Creative Commons License 2014.03.07 0 0 24421

Szia!

 

És mit mondott? Látszik?

Ha azt mondja, hogy látszik, akkor két dolog lehet:

- vagy a méretével van gond,

- vagy "elbújt" valami mögé.

 

Nézd meg lsz. a top, a width és a height tulajdonságokat is, illetve adj ki rá egy bringtofront parancsot. Ha soronkénti végrehajtást csinálsz, akkor ezt az msgbox után van értelme megpróbálni.

 

Ha nem látszik, akkor a visible tulajdonságot állítsd true-ra.

 

Üdv.

Előzmény: Zeugniss (24420)
Zeugniss Creative Commons License 2014.03.07 0 0 24420

Szia!

Így már lefutott, köszönöm. Annyi derült ki, hogy elvileg valóban itt kellene, hogy legyen (ahogy az a makróim felsorolásában is benne van), a képernyőn mégsem látszik....

Már a többi képet is odébb húzogattam, hogy megnézzem, nem rejtőzik-e valameylik mögött, de sajnos nem. 

:(

 

Üdv!

Előzmény: Fferi50 (24418)
HHjj Creative Commons License 2014.03.07 0 0 24419

Kedves pimre!

 

Én is úgy gondolom, hogy ez nem excel probléma, Köszönöm az ötletet, derengett, hogy volt dátum szeparátor XP-ben, de nem találom a megadott helyen. Nincs a Dátum tab-en ilyen mező. Az ötletet köszönöm, keresgélek ezen a nyomon a neten.

 

Küldök képet a Terület és Nyelv jelzett párbeszédpaneljéről.

 

Üdvözlettel:

Hj

Előzmény: pimre (24416)
Fferi50 Creative Commons License 2014.03.07 0 0 24418

Szia!

 

Bocsi úgy tűnik, kifelejtettem egy & -t a vessző helyett kell:

 

msgbox "Név " & sh.name & "Látható " & iif(sh.visible,"igen","nem") & " Tipusa " & typename(sh)

 

 

Üdv.

Előzmény: Zeugniss (24417)
Zeugniss Creative Commons License 2014.03.07 0 0 24417

Szia!

 

Köszönöm a segítséged!

 

Elvileg nem törlök sorokat, csak elfedek. A munkalapon belül több helyen is rejtek el sorokat, ahol csak sima képek vannak. Elvileg ezzel a beállítással a kép is eltűnik, különben csak lejjebb tolná az adott objektuomot és így örökké látható maradna, hiába rejtenék el sorokat.

 

 

Az általad írt makrót beillesztettem úgy, ahogy van, de sajnos hibaüzenetet kaptam.

 

Run-time error '13':

Type mismatch

 

A Debugger ezt a sort emeli ki sárgával:

       msgbox "Név " & sh.name, "Látható " & iif(sh.visible,"igen","nem") & " Tipusa " & typename(sh)

 

Nem tudom, nem kell-e bármivel kiegészíteni amit írtál, sajnos ennyire nem értek hozzá.

 

Üdv!

Előzmény: Fferi50 (24415)
pimre Creative Commons License 2014.03.07 0 0 24416

Ez nem biztos, hogy Excel probléma. Nézd meg a Windowsod Területi és nyelvi beállításait. Ezen belül a Testreszabás->Dátum fül alatt, hogy mi van beállítva Dátum elválasztónak. 

 

Nálam az alapértelmezés pont. Akkor elfogadja a pontot, a vonást és a / jelet is az Excel. Kipróbáltam, átírtam vonásra, attól kezdve a pontot nem fogadta el az Excel.

Előzmény: HHjj (24412)
Fferi50 Creative Commons License 2014.03.07 0 0 24415

Szia!

 

Én csinálnék egy ilyen makrót:

if activesheet.shapes.count>0 then

for each sh in activesheet.shapes

     msgbox "Név " & sh.name, "Látható " & iif(sh.visible,"igen","nem") & " Tipusa " & typename(sh)

next

endif

Ezzel végignézheted az aktív munkalapon levő shape-eket és megnézheted a típusukat.

Természetesen a makró bővíthető, hogy egy adott munkalapra írja ki  shapek adatait.

 

Hátha ezzel kiderül, hová lettek a vezérlőid.

 

Üdv.

Ps. Nem tudom, hogy jó-e az "Áthelyezés és átméretezés a cellákkal együtt" beállítás. Mi van, ha azért tűnik el a vezérlőd, mert az adott cellát törölték?

 

 

Előzmény: Zeugniss (24411)
Fferi50 Creative Commons License 2014.03.07 0 0 24414

Szia!

 

Két (vagy több) tulajdonság oszlop esetén használhatsz irányított szűrőt (ha van a 2002 excelben).

A szűrendő tartományban legyenek fejlécek.

A kritérium tartományt így állítsd össze:

Egyed  kategória1            kategória2

           munkavédelem

                                      munkavédelem

 

Ezután szűrés helyben.

 

(A kritérium érték külön-külön sorban vagy kapcsolatot, azonos sorban és kapcsolatot jelent)

 

Üdv.          

Előzmény: NeomatiK (24413)
NeomatiK Creative Commons License 2014.03.07 0 0 24413

OKé, köszi, megcsinálom így. Aztán ha nem elég felhasználóbarát, akkor más megoldás kell.

Előzmény: Fferi50 (24410)
HHjj Creative Commons License 2014.03.07 0 0 24412

Sziasztok!

 

Nerm vagyok kezdő Excel programozó. Ki látott már ilyet?

 

A gépemen a

 

Sub cccc()
  MsgBox (Year("2012.12.12"))
End Sub

 

Type mismatch hibával elszáll, míg

 

Sub cccc()
  MsgBox (Year("2012-12-12"))
End Sub

 

jól lefut, visszaadja a 2012-es értéket.

 

Magyar WIN7 az op. rendszer, angol Office 2007-tel van kombinálva. A windows rövid dátum formátuma: éééé. HH. nn. Próbáltam más gépeken, ott mind a kettő jól fut le.

 

Milyen beállítás lehet rossz?

 

Üdv.: Hj

Zeugniss Creative Commons License 2014.03.07 0 0 24411

Szervusztok!
Egy kétnyelvű Excel 2010 Home and Buisniess-t használok. Adott egy xlsm kiterjesztásű fájlom, amiben sok számítás és adat mellett makrók is vannak. Az egyik munkalapom kezelőfelületként működik. Ebben többféle Active-X vezérlőt is használok. Sajnos már sokadszorra fordul elő az, hogy bizonyos vezérlőim eltűnnek a munkalapomról. Egyszerűen nem jelennek meg, viszont a makróimat végignézve mégis megtalálom őket. Azaz úgy tűnik, hogy csak a vezérlők megjelenítése veszik el, a mögöttes tartalom megmarad.

 

Volt már, hogy valahol a százezredik sor környékén megtaláltam a vezérlőt, holott a problémás vezérlőim jellemzőin belül, az objektum elhelyezésénél már beállítottam, hogy: "Áthelyezés és átméretezés a cellákkal együtt"

 

Sajnos az utóbbi négy alkalommal, mikor a hiba előjött, már nem találtam meg sehol. Így egy korábbi biztonsági mentésemet kellett visszahoznom és az azóta történt változtatásaimat újra be kellett írnom.

 

Érdeklődöm, hogy tapasztalt-e már más is hasonlót, van-e megoldási javaslat? Annak is örülnék, ha valahogy meg lehetne keresni ilyenkor az "elveszett" vezérlőket. Azzal még csak-csak együtt tudnék élni, hogy utána a helyükre kll igazítanom.

 

// Egyéb megjegyzések a hibához:

 

- Létrehoztam a vezérlőket újra és megpróbáltam átnevezni a régire. -> Nem engedi, mert már léteznek a vezérlők az adott névvel.

- Ha a hiba előjön, akkor az folyamatosan fennáll. Azaz pendrivera kimentve másik gépen megnyitva szintén nem látszanak a vezérlők. (Sem egynyelvű Sem kétnyelvű excellel.)

- A hiba nem jön elő állandóan. Legutóbb pl. egy hetet dolgoztam a fájllal és csak most bukott ki.

- A mentés verziója elvileg minden esetben makróbarát Excel-munkafüzet, azaz xlsm.

- A munkalapon többször rejtek el vagy teszek láthatóvá sorokat. Az összeset felfedve sem találom a vezérlőket.

- Kipróbáltam, hogy eltűnnek-e a vezérlők esetleg akkor, ha a hozzájuk tartozó sorok el vannak rejtve és ekkor mentem a fájlt. Újra megnyitva a fájlt, majd ismét felfedve az adott sorokat, a vezérlőm látszik.

//

Fferi50 Creative Commons License 2014.03.07 0 0 24410

Szia!

 

Szerintem tedd egy oszlopba a kategóriákat és a szűrésnél használd az egyéni szűrőt, így:

pl.  tartalmazza   munkavédelem

Ha ilyen nincs akkor az egyenlő *munkavédelem* is ugyanúgy jó (és tartalmilag ugyanazt jelenti és csinálja).

 

Üdv.

Előzmény: NeomatiK (24409)
NeomatiK Creative Commons License 2014.03.07 0 0 24409

Sziasztok!

 

 

Van egy katalógus szerű. A sorokban vannak felsorolva a különböző "egyedek" és az oszlopokban a tulajdonságaik.

Bővíteném az oszlopokat , hogy milyen kategóriába esik az "egyed" és ami fontos szempont, hogy szűrni is lehessen utána.

 

 

De van olyan egyed, amihez több kategóriát is megadnék. Ha egy cellába írok több tulajdonságot, akkor nehéz lesz így szűrni, mert "AAA, BBB"- lenne a cellában. És ha én AAA-ra szűrök, akkor nem kerül bele az AAA, BBB.

Viszont ha külön oszlopba teszem a BBB-t, akkor már 2 oszloppal kell zsonglőrködni, ami megintcsak nem ad szűréskor megfelelő találatot. De szívem szerint külön oszlopba tenném a második kategóriát az áttekinthetőség miatt, hogy egy cellába ne legyen 1-nél több jellemző.

 

Egy körülbelüli példa (oszlop1: egyed, oszlop2: kategória1, oszlop3: kategória2):

 

X, hegesztés, munkavédelem

y, vegyipar

z, gépipar

v, gépipar, munkavédelem

w, munkavédelem, munkaszervezés

 

Ha tehát a munkavédelemre akarok szűrni és az oszlop2-ben ezt állítom be, akkor csak a w lesz a találat. Ha az oszlop3-ban, akkor x,v.

De olyan nem lesz, hogy x,v,w legyen a találat.

 

Van valami jó ötletek, hogyan lehetne ezt elrendezni? És Excel 2002-t használok.

csakegykérd Creative Commons License 2014.03.05 0 0 24408

ez aaaz!!! köszönöm!:))

Előzmény: tbando (24354)
Ezoverzum Creative Commons License 2014.03.05 0 0 24407

Igazad van :)

 

Az egyszerűség mindig jó megoldás

Köszönöm a segítséget

X

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

A Chdir fölösleges, helyette a mentési fájlnévhez add hozzá a mappa elérési útvonalát.

 

SzámlaFile = "D:\EZOVERZUM\Tlan\" & "Tlan-A" + Format(szsz) + ".xlsx"

 

 

Előzmény: Ezoverzum (24404)
Ezoverzum Creative Commons License 2014.03.05 0 0 24405

Az egyik problémára rájöttem, hogy rosszul adtam meg ezt a rész:

 

FileFormat:= _ xlOpenXMLWorkbook,

Ezoverzum Creative Commons License 2014.03.05 0 0 24404

Sziasztok

 

Egy raktárkezelő programon dolgozom és van 2 dolog amit nem értek

1: valamiért a C:UsersAlexDocuments mappába menti. Miért?

   pedig a (D:EZOVERZUMTlan) mappába kellene

2: a mentett fájlt csak .xls fájlként hajlandó megnyitni .xlsx fájlként hiba üzenetet ír ki hogy a program ... bla bla

   pedig azt szeretném, hogy xlsx fájlként mentse el és ne régi típusú xls-nek

Kimásoltam a makró végét (előtte mindent rendben jól csinál)

 

        Sheets("SZÁLLÍTÓ").Select                 'szállító kimentése új munkalapra
        Sheets("SZÁLLÍTÓ").Copy
        
        Meghajtó = "D:"
        ChDir Meghajtó + "EZOVERZUMTlan"                        

        SzámlaFile = "Tlan-A" + Format(szsz) + ".xlsx"   
        ActiveWorkbook.SaveAs Filename:=SzámlaFile, FileFormat:=xlNormal, _
            Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
            , CreateBackup:=False
        Workbooks(SzámlaFile).Close

 

Valószínűleg bagatel a probléma csak én nem jövök rá.

Előre is köszi

X

Fferi50 Creative Commons License 2014.03.04 0 0 24403

Így azért megoldottuk a nagyját.

 

Előzmény: DominicWolf (24402)
DominicWolf Creative Commons License 2014.03.04 0 0 24402

Nem megy sajna. Csináltam egy kis probafilet.

Ezen ekérhető vok dominicwolfika@gmail.com

Ha írnál erre elküldeném.

 

Köszi

Előzmény: Fferi50 (24401)
Fferi50 Creative Commons License 2014.03.04 0 0 24401

Szia!

Melyik az aktív munkalap?

Ha a Pictures, akkor az a probléma, hogy az ott levő AA3 cella értékét akarja, ami valószínűleg 0.

 

Tehát próbáld így:

 

Sheets("Pictures").Range(sheets("Riport").Range("AA3").Value).CopyPicture xlScreen, xlPicture

Ha a Riport munkalap az aktív - onnan indítod a makrót - akkor jónak kell lennie az első sornak is (már ha az AA3 cellában valóban egy cella címe van). De ha az M3 cellában van az érték, akkor az M3 legyen az AA3 helyett.

A select-ek pedig teljesen feleslegesek. (Az activesheet.pictures.paste.select-ről meg inkább nem mondanék véleményt.)

Nézd meg légy szíves, mit javasoltam a korábbi hozzászólásomban a Paste után a kép helyretételére.

Előzmény: DominicWolf (24400)
DominicWolf Creative Commons License 2014.03.04 0 0 24400

Köszi, de nézd már meg lsz, mert az első sor hibára szalad:

 

Sub Macro3()

'

' Macro3 Macro

 

 

 

 

'

    Sheets("Pictures").Range(Range("AA3").Value).CopyPicture xlScreen, xlPicture

  

    Sheets("Riport").Select

    Range("a3").Select

    Range("A3:A7").Select

    ActiveSheet.Pictures.Paste.Select

End Sub

 Sajna. Egyébként ha lehet kérni mondjuk a referenciacella a Riport lap m3 mezőjében van. Erről a lapról indítva és ide érkezve elegánsabb lenne. Filenevet azért nem írtam mert a file nyitva van a Riport lapon.

Köszi a sok pátyolgatást!

Előzmény: Fferi50 (24398)
Fferi50 Creative Commons License 2014.03.04 0 0 24399

Persze a 2 to 10 az nyilván attól kezdődik, ahonnan van megrendelés és addig a sorig tart, ameddig még van.

A D oszlop pedig egy képzelt oszlop, helyettesítsd a sajátoddal.

 

 

Előzmény: Fferi50 (24398)
Fferi50 Creative Commons License 2014.03.04 0 0 24398

Akkor így:

 

workbooks("Háttérlapfileneve").sheets("Háttérlapneve").range(range("M3").value).copypicture xlscreen,xlpicture

 

De mivel több sorod is van, nyilván végig szeretnél menni a sorokon.

Ezért

for x=2 to 10

workbooks("Háttérlapfileneve").sheets("Háttérlapneve").range(sheets("megrendelo").range("M" & x).copypicture xlscreen,xlpicture

sheets("megrendelo").paste

sheets("megrendelo").shapes(neve).top=range("D & x").top

sheets("megrendelo").shapes(neve).left=range("D & x").left

next

 

Ha a megrendelo nevű munkalap az aktív, akkor - de csak akkor - helyettesítheted az activesheet -tel.

 

Üdv.

Előzmény: DominicWolf (24397)
DominicWolf Creative Commons License 2014.03.04 0 0 24397

Bocsi, a riport cellabán egy math fv-nyel kijön, hogy a háttér lap 242. sorában van. Az oszlop generálisan B. Egy cellában ="B"&k3 Így jön ki az m3 cellában, hogy a kétdéses kép a háttér lap B242 cellájában van. Ezt az értéken akarom változóként beírni a macroba, hisz csak innentől macro.

 

Köszi!

Előzmény: Fferi50 (24396)
Fferi50 Creative Commons License 2014.03.04 0 0 24396

Szia!

 

Ha megmutatnád azt a kis makrórészletet, amivel megtalálod a B242-t, akkor valószínűleg többet tudnék segíteni.

 

Üdv.

Előzmény: DominicWolf (24394)
pimre Creative Commons License 2014.03.04 0 0 24395

Ez világos volt, kösz. Kipróbáltam a programrészletet, amit javasoltál. Értem, és fogom tudni használni adott esetben.

Előzmény: Fferi50 (24392)
DominicWolf Creative Commons License 2014.03.04 0 0 24394

Köszi, épp az a gondom, hogy a B242 egy keresőfv alapján jön ki és ez mindig más. Ezt kéne változtatni a macroban. Ez lehet B121 is, attől függ, hogy milyen termékkód került a riport lapra. Ez alapján kéne a macroban, mint a lap egyik ceellájában kiszámolt értéket használni a macroban. Remélem nem volt túl homályos.

 

Lehet neked annyira trivi, hogy bonyolultabbra számítasz.

Bocsi.

Előzmény: Fferi50 (24391)
Fferi50 Creative Commons License 2014.03.04 0 0 24393

Mármint az "= üres" szűrőt.

Előzmény: Fferi50 (24392)
Fferi50 Creative Commons License 2014.03.04 0 0 24392

Szia!

 

De ha nem akarsz ilyeneket keresgélni, akkor simán ráereszteném a szűrőt a usedrange oszlopaira és clean a látható cellákra.

 

Üdv.

Előzmény: pimre (24390)
Fferi50 Creative Commons License 2014.03.04 0 0 24391

Szia!

 

workbooks("Háttérlapfileneve").sheets("Háttérlapneve").range("B242").copypicture xlscreen,xlpicture

 

A nevek helyére tedd be a saját neveidet.

 

Üdv.

Előzmény: DominicWolf (24389)
pimre Creative Commons License 2014.03.04 0 0 24390

Ez az elfajzott üres cella kifejezés nagyon tetszik. Már használatba is vettem:-)

Előzmény: Fferi50 (24385)
DominicWolf Creative Commons License 2014.03.04 0 0 24389

Köszi.

Már addig menne a dolog, hogy online ki tudom számolni holvan a kép a háttér lapon. "Csak annyi kellene", hogy ez alapján pl B242 megtalálja egy macro a háttér lapon a cellát B242 és ezt tudjam a vágólapra felmásolni. Innen visszakocogok a kimutatás megfelelő cellájába és egy paste as a bitmap-pal ki is tenné. A baj, hogy online megkapott hivatkozást nem tudok beépíteni a macroba.

Előzmény: Fferi50 (24388)
Fferi50 Creative Commons License 2014.03.04 0 0 24388

Szia!

 

Én úgy csinálnám, hogy elnevezném a képeket, a számokhoz az elnevezést társítanám és az alapján lehetne átmásolni a képet.

Ez azért lenne könnyebb, mert cella cím alapján a képet (rectangle, shape) nagyon bonyolult megtalálni, név alapján viszont igen egyszerű.

Csak egyszer kell az elnevezést megcsinálni és még az is makrósítható - de a másik oldalról:

Mész végig a képeken, a hozzá tartozó cella (topleftcell) címe alapján megnézed a balra mellette levő cella tartalmát és az alapján adsz neki nevet, pl.

for each sh in sheets("képek").shapes

     sh.name=sheets("képek").range(sh.topleftcell.row,1).value

next

Feltételezve, hogy az elnevezések az első oszlopban vannak és mind különböző, valamint névként elfogadható a VBA-ban.

 

Innen már csak azt kell tudnod, hogy az átmásolandó képnek mi a neve és máris működik a dolog.

sheets("képek").shapes(neve).copy

sheets("megrendelo").paste

sheets("megrendelo").shapes(neve).top=range("xx").top

sheets("megrendelo").shapes(neve).left=range("xx").left

 

xx az adott cella, ahova be kell kerülnie a képnek.

 

Üdv.

 

Előzmény: DominicWolf (24384)
Fferi50 Creative Commons License 2014.03.04 0 0 24387

Szia!

 

Aztán, ha kiderült hogy van ilyen cella, akkor a következő kis makro minta segíthet eltüntetni:

 

sub torlese

    ActiveSheet.UsedRange.Columns("A").AutoFilter Field:=1, Criteria1:="="
    Set rng = ActiveSheet.UsedRange.Columns("A").SpecialCells(xlCellTypeVisible)
    MsgBox rng.Address
    rng.Clear
    ActiveSheet.AutoFilterMode = False

end sub

 

Nyilván úgy címezed és csicsázod, ahogy szeretnéd.

 

Üdv.

Előzmény: pimre (24380)
Ezoverzum Creative Commons License 2014.03.04 0 0 24386

Köszönöm a megoldást.

 

ilyen lehetőségben nem is gondolkodtam de nagyon jól bevált.

Amit elvárok azt csinálja.

Köszi

Előzmény: Törölt nick (24379)
Fferi50 Creative Commons License 2014.03.04 0 0 24385

Szia!

 

Ez jó, bár nekem az előjel miatt inkább a fordított kivonás tetszik. Ha az eredmény 0, akkor nincs "elfajzott" üres cella.

 

Üdv.

Előzmény: Törölt nick (24382)
DominicWolf Creative Commons License 2014.03.04 0 0 24384

Köszi

 

Addig jutottam, hogy van egy riport lap, ahol a szám szerint keres fv-nyel ki tudom keresni, hogy a kép a háttér lap B oszlopának hanyas sorában van. Pl B242.

Azt akarom , hogy egymakro olvassa be ezt a számot, ez alapján álljon rá a háttér lap cellájára.másolja, menjen vissza a riport lap megfelő cellájába, itt illessze be képként. Ezután olvasson be egy mási cellt és vay 10-szer ismételje meg.

Köszi.

Előzmény: Törölt nick (24381)
Fferi50 Creative Commons License 2014.03.04 0 0 24383

Szia!

 

Az aktuális cella sorára a következőképpen hivatkozhatsz:

activecell.row

 

De az általad végzendő műveletekhez nem kell a select. Ezt csak a makrórögzítő szereti használni.

Nézd meg, hogy konkrétan melyik cellában álltál, amikor a makrórögzítő elindult. (Ha nem ott álltál, akkor kell lennie a makróban egy ilyen sornak : range("A1").select  - A1 helyett egy cella cím van.)

 

Akkor ezzel lehet tovább folytatni. Pl.

 

range("C2").entirerow.insert shift:=xldown

range("C3").copy range("C2")

 

Üdv.

 

Előzmény: Ezoverzum (24378)
Törölt nick Creative Commons License 2014.03.04 0 0 24382

Próbáld meg a

 

Rng.SpecialCells(xlCellTypeBlanks).Count - Application.WorksheetFunction.CountBlank(Rng)

 

kifejezés különbségét. Hátha.

Előzmény: pimre (24380)
Törölt nick Creative Commons License 2014.03.04 0 0 24381

"Egyébként nincs mód akárhogy arra, hogy az A oszlopban van egy csomó számom egymás alatt."

 

Erre egészen biztosan van mód. Nekem már sikerült.

 

"Mellete a B oszlopban Rectacleként vannak a termékek képei."

 

Mi az a Rectacle?

 

"Van-e olyam macro lehetőség..."

 

Van olyam.

 

"Egy ilnyen macro kellene. Tud vki segíteni?"

 

Tudna, de szerintem tökre nem érthető, hogy mit akarsz. Megvárhatjuk, hogy hátha valaki nálam jobban megérti, vagy megpróbálhatod szabatosan leírni a feladatot, munkalapnevekkel, tartománycímekkel, stb., és akkor talán én is hozzá tudok szólni.

Előzmény: DominicWolf (24374)
pimre Creative Commons License 2014.03.04 0 0 24380

Igen, az üres függvényt nem próbáltam. De a kérdésed a maradványról rávezetett a megoldásra.

 

Azt, hogy minek a maradványi ezek a cellák, csak sejtem, már nem emlékeztem pontosan, mert sok kézi vacakolással alakítgattam a táblázatot.  De itt az lehetett, hogy eredetileg képlet volt benne, amit később irányított beillesztéssel értékké alakítottam. Ezt most sikerült is rekonstruálnom a teszttáblában.

 

Tehát ha az A1 cellába a következő képletet írom: =HA(D1=1;"1";""), és a D1-ben nem 1 áll, akkor az eredmény "" string a cellában. Ha pedig ezt értékké alakítom, akkor a cella az üres függvényre hamis értéket ad, holott semmi nem látszik.

 

Már csak az a kérdés, hogy lehet-e ezt a tényt tesztelni valahogy?

Előzmény: Fferi50 (24377)
Törölt nick Creative Commons License 2014.03.04 0 0 24379

Talán:    

 

Dim Oszlopok As Range
    
Set Oszlopok = Range("B:B, D:D, F:F, J:M")
Selection.Copy
Selection.Insert Shift:=xlDown
Application.Intersect(Selection, Oszlopok).ClearContents

 

Bár nem világos, hogy a példádban a 14. sor a Selection-höz képest hol helyezkedik el...

Előzmény: Ezoverzum (24378)
Ezoverzum Creative Commons License 2014.03.04 0 0 24378

Sziasztok

 

Van egy ilyen makróm.

 

    Selection.Copy
    Selection.Insert Shift:=xlDown
    Application.CutCopyMode = False
    Range("D14").Select
    Selection.ClearContents
    Range("F14").Select
    Selection.ClearContents
    Range("J14:M14").Select
    Selection.ClearContents
    Range("B14").Select

 

 

A range sorokat szeretném átírni olyan formában, hogy mindig az aktuálisan kijelölt sorra értelmezze.

Valami ilyesmire gondolok.

 

ActiveCell.Offset(0, 1).Select

 

A problémám (ismerethiányom) az, hogy hogyan lehet úgy hivatkozni, hogy a sorban több cellára is mutasson egyszerre, mint ahogy a Range pl:

Range("J14:M14").Select

 

Tömören:

A makrót úgy akarom futtatni, hogy bármelyik sort kijelölve az aktuálisan kijelölt sorral dolgozzon.

Előre is köszönöm

X

Fferi50 Creative Commons License 2014.03.04 0 0 24377

Szia!

 

Ha az üres függvényt használod, az megmutatja, hogy az A2-A4 cellák nem üresek.

De: nem is kell del gomb, elég egy f2-enter és máris üres lesz.

 

Ha nem titok, minek a "maradványa" egy ilyen cella?

 

Üdv.

Előzmény: pimre (24376)
pimre Creative Commons License 2014.03.04 0 0 24376

Sajnos nálam az égvilágon semmi különbség nem látszik. És nem is tudok olyan eszközről, amely az esetleges formátumkódokat kimutatná. Mindenesetre készítettem egy miniatűr tesztfájlt, ami mutatja a problémámat: http://data.hu/get/7482425/Ures_cella_teszteles.xls

 

Ha ebben az állapotában rendeztetem a munkalapot a tesztoszlop szerint, akkor a megnyitáskori képet adja. Ha az első csoport valamelyik üresnek látszó cellájában megnyomom a DEL gombot, akkor az újrarendezés után átkerül a hátsó csoportba. Feltételezem, hogy ezek a valódi üresek. De hogy mi lehet, az első csoportban levő cellákban, az számomra továbbra is rejtély.

 

Előzmény: Fferi50 (24375)
Fferi50 Creative Commons License 2014.03.04 0 0 24375

Szia!

 

Az a sejtésem, hogy azokban a cellákban formázási kódok maradtak ott. Pl. egy aposztróf - ami ugye azt jelenti, hogy a cellában levő számot szövegként kell kezelni -, amit egyébként nem látsz a cellában, csak akkor ha éppen kiválasztod.

 

Üdv.

Előzmény: pimre (24372)
DominicWolf Creative Commons License 2014.03.04 0 0 24374

Van-e olyam macro lehetőség, hogy egy lap megadot celláiból kivéve a számokat egy másik lapon megkeresi a számot egy háttér tárba, mellé lép és az ott talált képet másolja és beviszi a beviteli riport lap 3 oszloppal mellette lévő helyre másolja. Majd tovább lép és egy másik kódszámot tartalmazó számra lép. Közben az jutott eszembe, hogy még macro mélkül egy segéd oszlopban a képek helye match fv-nyel meghatározható. "Már" csak az a feladat hogy ha 0-nál nagyobb számot talál egy cellában egy másik lapról a hely száma sszerint kikereshető cellában lévő Rectacle bemásolható. Egy ilnyen macro kellene. Tud vki segíteni?

 

Köszi!

Előzmény: DominicWolf (24373)
DominicWolf Creative Commons License 2014.03.04 0 0 24373

Köszi, legalább ezt is tudom. Egyébként nincs mód akárhogy arra, hogy az A oszlopban van egy csomó számom egymás alatt. Mondjuk ezek a termékszámok. Van 1-2 ezer. Mellete a B oszlopban Rectacleként vannak a termékek képei. A feladvány az, hogy ezt, mint háttér adatbázist alkalmazva egy másik lapon ha meghívok kb 10 termékszámot mellé kerülne a  termékek képe.

 

Köszi.

Előzmény: tbando (24371)
pimre Creative Commons License 2014.03.04 0 0 24372

Megint egy alapokat érintő kérdésem van. Rendszeresen tapasztalom, hogy ha kézből kiadok egy rendezési parancsot (mondjuk növekvő sorrendben), akkor az egyformán üresnek látszó cellák egyik felét a szöveget tartalmazó cellák elé, másik felét mögé teszi. A sejtésem az, hogy valamiképp megkülönbözteti azokat, ahol már volt korábban adat, és ahol nem. 

Igazából csak bosszantó, mert többnyire nem számítok rá. Meg tudom oldani, de érdekelne az oka. Próbáltam tesztelni, pl. =A1="" teszttel, illetve ugyanezzel a szintaxissal a hátratetteknél. Nem volt különbség. Az eredmény IGAZ volt. Próbáltam ellenőrizni, hogy nincs-e valami rejtett karakter ott, de az =kód(A1) szintaxis mindkét esetben #ÉRTÉK! eredményt adott.

Aztán kijelöltem a lista elején álló cellákat, és megnyomtam a DEL gombot, amivel ürítettem őket (az egyébként üres cellákat). Az újabb rendezés után már annak rendje és módja szerint hátramentek a társaikhoz. 

 

Hogy van ez?

tbando Creative Commons License 2014.03.03 0 0 24371

Fferi jól emlékszik. A 23759 sz. kérdés kapcsán derült ki, hogy a képhez tartományrendelés a 2007-verzióban nem müxik.  A 2003-ban igen.

Előzmény: DominicWolf (24367)
Fferi50 Creative Commons License 2014.03.03 0 0 24370

Szia!

 

Milyen excel verziód van?  Úgy emlékszem, a 2007-esben nem működik ez a módszer.

 

Üdv.

Előzmény: DominicWolf (24368)
Fferi50 Creative Commons License 2014.03.03 0 0 24369

Szuper!

Előzmény: Delila10 (24364)
DominicWolf Creative Commons License 2014.03.03 0 0 24368

a kép lemaradt

Előzmény: DominicWolf (24367)
DominicWolf Creative Commons License 2014.03.03 0 0 24367

Sziasztok!

 

Régebben is foglalkoztatott a kérdés, de csak nem boldogulok vele.

Ez alapján próbáltam, de nem tudom az első képhez rendelni a tartományt.

http://www.youtube.com/watch?v=GQIEADH1o7M

 

Mellékelek egy képet, ha valaki megnézné és rájönne mi a gond nagyon megköszönném!

Tartományok elnevezve, indirekt fv megadva, de nem tudom az első képhez fvt rendelni, leginkább semmit.

tbando Creative Commons License 2014.03.03 0 0 24366

A megjelenítés módját. Hogy a semleges területre mozgatható megjegyzésből automatikusan megy a nyíl a releváns cellához.  

Előzmény: Delila10 (24365)
Delila10 Creative Commons License 2014.03.03 0 0 24365

Nagyon szívesen, csak nem tudom, mit. A megjelenítéseket, vagy a képleteket? :)

Előzmény: tbando (24363)
Delila10 Creative Commons License 2014.03.03 0 0 24364

vasgyúró vízköpő szócséplő markáns kézfogó lebilincselő bakafántos csonthéjas embergyűlölő fluor hangszigetelő idegőrlő antiszepszis gyertyaszentelő vízválasztó lábtörlő rézsútos jogsértő szubjektív jelfogó

 

és még sokan mások...

Előzmény: Fferi50 (24362)
tbando Creative Commons License 2014.03.03 0 0 24363

Kösz ezekért a Megjegyzés megjelenítésekhez.  Sokszor jó lett volna, ha tudom, hogy így is lehet és hogy ilyen egyszerű :))).   

Előzmény: Delila10 (24355)
Fferi50 Creative Commons License 2014.03.03 0 0 24362

Egy-kettő nekem is eszembe jutott:

sajtreszelő,

érzéscsillapító,

hátbavágó.

 

De a Tieid biztosan sokkal jobbak.:)

Előzmény: Fferi50 (24361)
Fferi50 Creative Commons License 2014.03.03 0 0 24361

Mutasd, mutasd!!!

Előzmény: Delila10 (24360)
Delila10 Creative Commons License 2014.03.03 0 0 24360

Kösz. Az egyéni listába vittem be egy halom hasonlót, hogy csak elő kelljen kapni.

Nem láttad még a foglalkozásokat tartalmazó listámat! :)

Előzmény: Fferi50 (24356)
Fferi50 Creative Commons License 2014.03.03 0 0 24359

Vagy egy ilyen képlet:

=max(szum(cellak)-10;0)

 

Előzmény: Fferi50 (24358)
Fferi50 Creative Commons License 2014.03.03 0 0 24358

Bocs, most látom, hogy ez konkrétan egy nap. Akkor valóban nem kell más, csak amit Tbandó írt.

Előzmény: Fferi50 (24357)
Fferi50 Creative Commons License 2014.03.03 0 0 24357

Szia!

 

Nagy az esélye, de mi van, ha valaki egy napon 10 óránál többet dolgozott a projekten? Akkor nem túlóra a 10 órán túli munka?

Szóval még mindig nem elég pontos ez a kérdés feltevés...

 

Üdv.

Előzmény: tbando (24354)
Fferi50 Creative Commons License 2014.03.03 0 0 24356

Szia!

 

Nagyon jók a neveid!:)

 

Üdv.

 

 

Előzmény: Delila10 (24355)
Delila10 Creative Commons License 2014.03.03 0 0 24355

Próbáld a kép szerint összeállítani. A B2:E10 tartomány formátuma h:ss, az időket összegző D11:E11-é [h]:mm.

 

 

 

Mivel magyar Excelem van, a képletek is így szerepelnek. Az órát és percet tudod angolul, az IDŐÉRTÉK megfelelője a timevalue, HA helyett if-et írj, SZUM helyett pedig sum-ot.

 

A G oszlop értékeit még felszorozhatod az egyéni órabérrel.

Előzmény: csakegykérd (24351)
tbando Creative Commons License 2014.03.03 0 0 24354

Nem igen értem, hogy mi itt a probléma. Szerintem ez a képlet kell neked, de olyan kacifántosan volt megfogalmazva, hogy senki sem értette:

 

=Ha(szum(cellak)>10;szum(cellak)-10;0)

 

 

Előzmény: csakegykérd (24353)
csakegykérd Creative Commons License 2014.03.03 0 0 24353

Szia!

 

Köszi szépen a kitartó segítséget!:)) és bocsánat, hogy nem vagyok világos.

 

Arra a példára (8+12+11+10+9+13=63 óra  ebből 2+1+3 =6 túlóra.), amit írtál valóban szuper Delila képlete. A baj, hogy a helyzet más:

 

XY timesheetje 

 

május 5.

 

1. projecten dolgozott 2 órát

2. project 4 óra

3. 1 óra

4. 5 óra

 

 

összesen 13 óra és ebből 3 a túlóra. Tehát Delila képletére végig nullát kapok, mivel az egyes értékek egyike sem haladja meg a 10-et. Csak az összértékük több mint 10, tehát nekem 3at kellene hogy kiírjon (, amit utána én még megszoroznék 1,3-mal). Azaz a Te példádban nem 6 lenne a túlóra, hanem 53 azaz az érték, ami nekem kéne (de nyilván ez lehetetlen, mivel egy nap 24 órából áll).

Remélem, most már érthetőbb!:)

 

Még egyszer köszönöm a segítséget! 

 

Előzmény: Fferi50 (24352)
Fferi50 Creative Commons License 2014.03.03 0 0 24352

Szia!

 

Egyrészt:

Az idézőjelek közé tett szöveget az excel nem értelmezi sehogyan sem, (kevés kivételtől eltekintve) pontosan úgy írja ki, ahogyan az idézőjelek közé beírtad - azaz az angol excel is képes a magyar szöveget kiírni. Oda tehát (mármint az idézőjelek közé) azt írsz amit akarsz. De ha az eredményt még szoroztatni akarod valamivel, akkor célszerű nem szöveget írni, hanem 0 értéket. (Azaz a " szöveg" helyett 0 kell.)

 

Másrészt:

Nem tudom, hogy jól értem-e, de ha túlórákat szeretnél számolni, akkor a következőre gondolok:

 

  1. Túlóra akkor van, ha egy adott napon 10 óránál többet dolgoztak.
  2. A túlórákat úgy lehet összesíteni, hogy a 10 óra fölötti időket kell összeadni.

Példa szerűen:

1. nap 8 óra   nincs túlóra

2. nap 12 óra  2 túlóra

3. nap 11 óra  1 túlóra

4. nap 10 óra   nincs túlóra

5. nap 9 óra    nincs túlóra

6. nap 13 óra   3 túlóra

 

Elszámolás: összesen 8+12+11+10+9+13=63 óra  ebből 2+1+3 =6 túlóra.

 

Ezt a számot pedig (ami a második! verziónak felel meg) pontosan megmondja neked Delila képlete.

 

Ha nem jól értelmeztem, akkor írd le légy szíves a Te verziódat.

 

Üdv.

Előzmény: csakegykérd (24351)
csakegykérd Creative Commons License 2014.03.03 0 0 24351

Nagyon köszönöm mindenkinek a segítséget!:) Az 1-es sorszámú a kérdésem, ha minden igaz. (Röviden egyébként ehhez kell: órabér táblázat, ahol a 10 fölött túlórának minősülő órákat 1,3-as szorzóval számoljuk. Ehhez kéne nekem egy külön cellában az túlórák száma, amely képletet kiegészítenék egy 1,3-as szorzóval. A ledolgozott órákat a dolgozók írják be projekt szerint. Azt szeretném, ha a túlórákat rögtön az egyes oszlopok alján egy külön cella észlelné és számolná. Csatoltam a táblázatot.) "A számok összege kevesebb, mint 10" ehelyett mit írjak angolul, amit tud értelmezni az excel?

Előzmény: Fferi50 (24349)
Zoxo Whitney Creative Commons License 2014.03.03 0 0 24350

És a (24325) egy negyedik értelmezés:

Ha a tartományban lévő számok összege > 10, akkor adja össze ugyanebből a tartományból a 10-nél nagyobb számokat!

Előzmény: Fferi50 (24349)
Fferi50 Creative Commons License 2014.03.03 0 0 24349

Szia!

 

Akkor értelmezzük mégegyszer a feladatot:

 

A kérdés a következő?

  1. ha egy tartományban levő számok összege nagyobb mint 10, akkor írja ki a tartományban levő számok összegét  10-el csökkentve?
    Ebben az esetben a képlet: =ha(szum(A1:A20)>10;szum(A1:A20)-10;"A számok összege kevesebb, mint 10")
  2. ha egy tartományban levő számok összege nagyobb mint 10, akkor írja ki a tartományban levő 10 -nél nagyobb számok 10 fölötti részének összegét?
    Erre jó Delila képlete.
  3. ha egy tartományban levő számok összege nagyobb mint 10, akkor írja ki a tartományban levő számok összegét, úgy hogy minden 10-nél nagyobb számból az összegzéskor vonjon le 10-et.
    Ebben az esetben  =ha(szum(A1:A20)>10;szum(A1:A20)-darabteli(A1:A20;">10")*10;"A számok összege kevesebb, mint 10")

Talán most benne van a válasz a kérdésedre.

 

Üdv.

Előzmény: csakegykérd (24347)
Törölt nick Creative Commons License 2014.03.03 0 0 24348

A képlet, amit Delila adott, teljesíti az általad 24322-ben megfogalmazott kritériumokat. Legalábbis azok egyik lehetséges értelmezési módját. Ha esetleg egy példán keresztül egyértelműen megvilágítanád, hogy mit is szeretnél, biztosan kapnál teljesen jó választ is.

 

Előzmény: csakegykérd (24347)
csakegykérd Creative Commons License 2014.03.03 0 0 24347

Köszi. De ez nagyon nem akar összejönni. ugyanúgy csak akkor írja ki az értéket, ha az egyes cellákban nagyobb érték van 10-nél. Azokat aztán szépen összeadja... angol excelem van, nem tudom milyen üzenetet kell a string helyére (ezt írtam: the overall sum is not more then 10, de gondolom ez nem jó). Valamiért nem működik ez a dolog, pedig nme tűnik olyan bonyinak.. köszi azért.

Előzmény: Delila10 (24327)
Ezoverzum Creative Commons License 2014.03.02 0 0 24346

Minden kedves hozzászólónak nagyon köszönöm a segítséget.

:)

X

Fferi50 Creative Commons License 2014.03.01 0 0 24345

Jobb lesz, ha ma már meg sem szólalok....

 

"Természetesen" megint elrontottam a sort, ez a jó:

 

A Vkeres($C$1;$A$3:$K$11;sor()-2;hamis) mint keresés is jó kell legyen.

 

(Mivel a 3. sorban kezdődik a tábla...)

 

 

Előzmény: Fferi50 (24344)
Fferi50 Creative Commons License 2014.03.01 0 0 24344

Szia!

 

Igen, a szívás az, amikor az egyszerűsítést "ész nélkül" csinálom. Mert az utóiratban szereplő hol.van helyett akartam egyszerűbb sor függvényt javasolni.

Így aztán persze "ugrott" a sor értéke.

Mondjuk úgy is lehet javítani. ha sor()-4 -et írunk be.

A Vkeres($C$1;$A$3:$K$11;sor();hamis) mint keresés is jó kell legyen.

 

Üdv.

Előzmény: Delila10 (24343)
Delila10 Creative Commons License 2014.03.01 0 0 24343

Fferi képlete átalakítva úgy, hogy a kívánt eredményt hozza:

 

=HA(INDEX($A$1:$K$11;SOR();HOL.VAN($C$1;$A$3:$K$3;0))="";$D4;INDEX($A$1:$K$11;SOR();HOL.VAN($C$1;$A$3:$K$3;0)))

Előzmény: Ezoverzum (24342)
Ezoverzum Creative Commons License 2014.03.01 0 0 24342

Szia

 

Köszönöm a hozzászólást és a segítséget.

 

Kipróbáltam az általad javasolt képletet és nálam valamiért eltolta az eredményt. Nem az azonos sorban lévő cellákból másolta ki az eredményt, hanem a 4 cellával lentebbiről. Próbáltam rájönni mi a gond vele de nem ment.

 

Készítettem róla képet és ezen a linken megtekinthető

http://www.kepfeltoltes.hu/view/140301/Excel_Vev__r1_www.kepfeltoltes.hu_.jpg

 

Ha van kedved időd majd nézz rá.

 

További szép napot

X

Előzmény: Fferi50 (24338)
artv Creative Commons License 2014.03.01 0 0 24341

Bocsi, meg is van.

 

SZUM(INDIREKT("A"&C1&":A"&B1;1))

 

köszi

 

Üdv

artv

Előzmény: artv (24340)
artv Creative Commons License 2014.03.01 0 0 24340

Még esetleg annyi, hogy azt hogyan tudom megadni a kezdő cellát indirekt-el?

 

SZUM(INDIREKT("A1:A"&B1;1))    tehát ha nem A1-től szeretném hanem ez is változna ??

 

köszi

 

Előzmény: artv (24339)
artv Creative Commons License 2014.03.01 0 0 24339

Nagyon köszi... erre gondoltam. :)

Előzmény: Zoxo Whitney (24336)
Fferi50 Creative Commons License 2014.03.01 0 0 24338

Szia!

 

Az adott kép alapján az alábbi képlet lenne jó a C4 cellára:

 

=ha(index($G$4:$K$11;sor();hol.van($C$1;$G$3:$K$3;0))="";$D4;index($G$4:$K$11;sor();hol.van($C$1;$G$3:$K$3;0)))

 

Ezt végighúzhatod a C oszlopban.

 

Üdv.

Ps:  a sor megállapítására is lehet a hol.van függvényt használni, esetedben: hol.van($B4;$B$4:$B$11;0)

 

 

Előzmény: Ezoverzum (24335)
Ezoverzum Creative Commons License 2014.03.01 0 0 24337

Sziasztok

 

Közben eszembe jutott a "vkeres" függvény aminek a segítségével sikerült megoldanom a problémát (kellett még a HA függvény is).

 

Azért köszönöm.

Üdv

X

Zoxo Whitney Creative Commons License 2014.03.01 0 0 24336

Valami ilyesmire van szükséged:

B1 mezőben van letárolva , hogy A1-től meddig akarod összeadni a számokat

=SZUM(INDIREKT("A1:A"&B1;1))

Előzmény: artv (24334)
Ezoverzum Creative Commons License 2014.03.01 0 0 24335

Sziasztok

 

Megoldást keresek az alábbi problémára.

Mellékelek egy képet a jobban érthetőség végett.

 

http://www.kepfeltoltes.hu/view/140301/Excel_Vev__r_www.kepfeltoltes.hu_.jpg

 

Van egy árlistám amiben termékek és árak szerepelnek. A probléma az, hogy a termékeket egyes vevők más áron kapják meg (V1-V5). Olyan függvényt keresek amivel a "Vevő ár" alatt található cellák a "C1" cellába beírt vevőkód alapján az ahhoz tartozó vevő árait jelenítenék meg. Ha netán a vevő nem kapna kedvezményt (cella üres) akkor automatikusan "Alap ár"-at használjon a "Vevő ár"-hoz.

 

Fkeres függvényt próbáltam használni de gyorsan beláttam, hogy az nem megy, mivel az oszlop változó.

 

Számomra fontos lenne a gyors megoldás, ezért előre is nagyon köszönöm a segítséget.

Üdv

X

artv Creative Commons License 2014.03.01 0 0 24334

Sziasztok!

 

Abban kérném egy excel specialista kérést, hogy melyik képletet hogy kellene használnom ahhoz, hogy adott egy számsor mondjuk A1:A100 -is.

 

1.

És mondjuk B1-be be lehet írni egy számot.. mondjuk legyen 50. És C1-be kiszámolná A1:A50-ig a számok összegét.

 

Ha mondjuk 60-at írok be akkor A1:A60-ig számolná.

 

2.

Annyival lenne még kiegészítve, hogy mondjuk 60-nál A1:A60 ig majd máshová kiszámolná A61:A100-ig.

 

Nyílván kell a SZUM függvény, ennyit még én is tudok, csak nem tudom hogy egy képletben hogyan lehet hivatkozni egy másik cella értékére.

pl: A1:A&C1  ??

Indirekt függvény esetleg??

 

Köszi szépen... :)

pimre Creative Commons License 2014.02.28 0 0 24333

Köszönöm, a javaslatod (#24318) megoldotta az én problémámat. Egyébként egy elnézéssel kezdem. Nem a find függvényre gondoltam, hanem a find methodra. Csak a szintaxisa miatt (zárójelben kell megadni a paramétereket) neveztem tévesen függvénynek. Szóval adatállományban akartam keresni, ahol a keresendő nevek némelyike wildcard karaktereket is tartalmaz. 

 

A wildcard karakterek megkeresésével nem volt gondom. Hiszen nem a tartományban, csak a keresőkifejezésben kell ellenőriznem, hogy van(nak)-e wildcard karakter(ek). Szerencsére az instr() függvény literalként kezeli a wildcardokat, így nem volt gond eléjük tildét tenni. És így már jó eredményt adott a keresés.

 

 

Előzmény: Fferi50 (24332)
Fferi50 Creative Commons License 2014.02.28 0 0 24332

Szia!

 

Igen, a VBA replace függvény valóban megtalálja és kicseréli pl. a * vagy a ? karaktereket, ha tudod, hogy melyik cellában van. De a feladat éppen az, hogy azokat a cellákat kell megtalálni, ahol ez a karakter előfordul, vagyis végig kellene menni a tartomány összes celláján, ami azért elég hosszadalmas is lehet.

 

A range.find és range.replace viszont a tilde-vel "előfogatolva" megtalálja / kicseréli ezeket a karaktereket is.

 

Üdv.

Előzmény: Törölt nick (24328)
roley Creative Commons License 2014.02.28 0 0 24331

Köszönöm!

Előzmény: Fferi50 (24330)
Fferi50 Creative Commons License 2014.02.28 0 0 24330

Szia!

 

A paste metódus nem a range, hanem a sheet metódusa. Tehát:

  cells(2,x).select

  activesheet.paste

 

De!

 

A sok select és egyebek helyett sokkal egyszerűbben meg lehet oldani:

 

For x = 1 To y

 

Workbooks.Open Filename:="D:/Modells/modell" & x & ".xlsx"

 

sheets("Munka1").range("A1"),range("A1").end(xldown)).copy workbooks("Result").sheets("Result").cells(2,x)

workbooks("Result").sheets("Result").cells(1,x) = "modell" & x & ""

activeworkbook.close 'itt a megnyitott modell nevű file marad az aktív.

 

next

 

workbooks("Result") => az a munkafüzet, ahová beolvasod az adatokat.

 

 

Előzmény: roley (24329)
roley Creative Commons License 2014.02.28 0 0 24329

Sziasztok!

 

Egy makrot akarok irni, amit megnyit sorban fájlokat, azok bizonyos részét bemásolja egy másik fájlba majd bezáródik, ezután indul újra a ciklus. A gondom az, hogy amikor a beillesztés részhez érne a makro akkor a következő hibaüzenetet dobja fel:

 

"Object doesn't support this property or method"

 

Ha kézzel akarnám akkor viszont beillesztené az adatokat. Alább láthatjátok a kódot

 

Sub beolvaso_makro()

 

Dim y As Integer

Dim x As Integer

 

With Application

    .DisplayAlerts = False

    .ScreenUpdating = False

    End With

 

 

 

y = 2

 

For x = 1 To y

Workbooks.Open Filename:="D:/Modells/modell" & x & ".xlsx"

 

Sheets("Munka1").Select

    Range("A1").Select

    Range(Selection, Selection.End(xlDown)).Select

    Selection.Copy

    Windows("Results").Activate

    Sheets("Results").Select

    Cells(1, x) = "modell" & x & ""

    Cells(2, x).Paste                                     '---> itt akad el a makro'

    Windows("modell" & x & "").Close

 

Next

 

 

End Sub

 

 


köszönöm a segítségeteket!

roley

Törölt nick Creative Commons License 2014.02.28 0 0 24328

A replace függvény megkeresi magának azt, amit ki kell cserélni.

Vagy nem értem a kérdést.

De mindegy, a te megoldásod jobb.

Előzmény: Fferi50 (24319)
Delila10 Creative Commons License 2014.02.28 0 0 24327

Ahogy Zoxo Whitney írta (míg a telefonon ültem), az én képletem végén az üres string helyére írhatsz egy üzenetet.

Előzmény: csakegykérd (24324)
Delila10 Creative Commons License 2014.02.28 0 0 24326

=HA(SZUM(A1:A20)>10;SZUMHA(A1:A20;">10";A1:A20)-DARABTELI(A1:A20;">10")*10;"")

 

Előzmény: csakegykérd (24324)
Zoxo Whitney Creative Commons License 2014.02.28 0 0 24325

Esetleg:

HA(SZUM(A1:A20)>10;  SZUMHA(A1:A20;">10";  A1:A20);"a teljes összeg sem nagyobb 10-nél")

A feltétel: a teljes tartomány összege legyen nagyobb 10-nél

igaz ág: ezen belül a 10-nél nagyobb értéket tartalmazó cellák összege

hamis ág: szöveges üzenet

 

Előzmény: csakegykérd (24324)
csakegykérd Creative Commons License 2014.02.28 0 0 24324

Szia!

Köszi! Majdnem, de így csak akkor írja ki a felesleget, ha az egyes cellában lévő érték meghaladja a 10et. Nekem az kéne hogy ha az A1:A20 szummája meghaladja a 10et akkor a 10 fölötti értékek szummája íródjék ki.. Előre is köszi a segítséget!

Előzmény: Delila10 (24323)
Delila10 Creative Commons License 2014.02.28 0 0 24323

=SZUMHA(A1:A20;">10";A1:A20)-DARABTELI(A1:A20;">10")*10

 

Nálam a számokat tartalmazó tartomány az A1:A20.

Előzmény: csakegykérd (24322)
csakegykérd Creative Commons License 2014.02.28 0 0 24322

Sziasztok!:)

A következőre várnék sürgős választ, valószínűleg tök szimpla a megoldás: Excelben azt szeretném elérni, hogy akkor adja össze a cellákat, ha a tartományban lévő cellák összege meghaladja a 10-et. Tehát, nem az kell nekem, hogy azokat a cellákat adja össze, amiknek az értéke meghaladja a 10-et. és még jobb lenne, ha a 10 fölötti "felesleget" adná csak ki a képletezett cellában. Remélem, értelmezhető, amit írtam.. :)

Előre is köszönöm a választ!!!

Fferi50 Creative Commons License 2014.02.28 0 0 24321

Szia!

 

Erről valószínűleg "Redmond" nicknevű fórumozónk tudna bővebbet mondani - de ő sajnos igen-igen ritkán, mondhatni sohanapján fordul elő itt.

 

(Lehet, az az érv, hogy mi ezzel a karakterrel kezdtük, a többiek tértek el a mi szabványunktól. :))

 

Üdv.

Előzmény: Sánta Kutya (SK) (24320)
Sánta Kutya (SK) Creative Commons License 2014.02.28 0 0 24320

És van valami szakmai oka, amiért nem a \ karaktert használják, vagy csak a szokásos beteges mániájuk, hogy a világ összes szabványát/szokását lerombolják, és a saját verziójukat próbálják a világra kényszeríteni helyettük?

Előzmény: Fferi50 (24318)
Fferi50 Creative Commons License 2014.02.28 0 0 24319

Szia!

És hogy keresse meg a wildcard karaktert a replace-hez?

 

Üdv.

Előzmény: Törölt nick (24316)
Fferi50 Creative Commons License 2014.02.28 0 0 24318

Szia!

 

Idézet innen:

http://support.microsoft.com/kb/214138

 

"Microsoft Excel uses the tilde (~) as a marker to indicate that the next character is a literal. When you use the Find and Replace dialog box to find or replace a character such as a tilde (~), an asterisk (*), or a question mark (?), you must add a tilde (~) before the character in the Find what box.

Note If you want to find or replace a tilde in a worksheet, you must type a double tilde (~~) in the Find what box."

 

Üdv.

Előzmény: pimre (24314)
Törölt nick Creative Commons License 2014.02.27 0 0 24317

Aztán, ha megvan amit akartál, akkor cseréld vissza.

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

Cseréld ki (Replace) a wildcard karaktert erre: "sdfg ivhsőghijsrőthu ő", és erre keress rá a Find-del.

Előzmény: pimre (24314)
Sánta Kutya (SK) Creative Commons License 2014.02.27 0 0 24315

És ha azt az egy karaktert egy karakterfüggvénnyel illeszted be?

Előzmény: pimre (24314)
pimre Creative Commons License 2014.02.27 0 0 24314

Van-e mód arra, hogy a find függvény a wildcard karaktereket annak tekintse, ami, és ne wildcardnak? Tudom, hogy helytelen ilyen karaktereket tenni egy stringbe, de sajnos van amikor készen kapom, és a program nem tudja elmagyarázni a delikvensnek, hogy ilyet ne használjon. Ugyanakkor adott helyzetben szeretném megtalálni azt a stringet, ami ilyet tartalmaz, én más hasonlót.

Keresve rátaláltam egy "matchwildcards=True" beállításra, de úgy látom, hogy a help nem ismeri, és ha van is, az nem a find függvény része.

 

Fferi50 Creative Commons License 2014.02.27 0 0 24313

Szia!

 

Ha a napok az A oszlopban vannak, akkor:

a maradék napok képlete =F32-darabteli(A:A;0)

Ha a napok nem egy oszlopban, hanem tartományban vannak (pl. A1:D120), akkor

a képlet =F32-darabteli(A1:D120;0)

 

Üdv.

Előzmény: Szabolcski Ricsi Ferenc (24312)
Szabolcski Ricsi Ferenc Creative Commons License 2014.02.27 0 0 24312

Hello!

Segitségeteket szeretném kérni egy kis excel problémám akadt.

Megjedzem kezdö vagyok.

Készitettem egy táblázatot ami az egész évi munka orát számolja (alap óra + túlora),ez az időbank miatt kell mivel már 2 hónapja nem dolgozunk de alapfizetés van és majd az egész 2 hónapot be kell dolgozni. Na most elég jól sikerült az egész de nem tudok rájönni, hogy a szabadságot hogy tudná kiszámolni, mivel megadtam egy cellában hogy 24 szabadnap van és azt is megoldottam hogy ha valamelyik hónap egyik napja 0 val van megadva (szoval nem 8 óra vagy 12 vagy akármi) akkor az szabadság, még ez is megy levont 1 et hanem ha még egy napot 0 val jelölök akkor ö megint 24 böl von ki 1-et.

Kérdésem: milyen formulával tudnám megoldani, hogy akármennyi 0 irok mindég 1 el kevesebb legyen?

Elöre is köszönöm válaszotokat.

Valahol itt lessz a hiba =IF(A1=0;F32-1;)

Fferi50 Creative Commons License 2014.02.27 0 0 24311

Szia!

 

Hát lehetne még variálni, pl. programból megnyitsz egy word doksit és abba szépen belerakod a copypicture-rel kivett képeket. Utána meg beleírod a word doksiba a képek közé a szöveget.

 

sub wordbe

dim wrd as object

Range("A1:B8").CopyPicture xlScreen, xlBitmap
Set wrd = CreateObject("Word.Application")
wrd.Visible = True
wrd.documents.Add
wrd.documents(1).Range(0).Paste
wrd.documents(1).SaveAs filename
wrd.Quit
End Sub

 

A word doksit addig tartod nyitva, amíg van bemásolni valód.

 

De ha külön-külön rögtön jpg-ben akarod látni, akkor a chart a jó megoldás, mert az direktben tudod képfájlba menteni.

 

Üdv.

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

Szia!

 

Köszönöm szépen! Az a helyzet, hogy én is találtam ilyen "chart-os" megoldást, de gondoltam, hátha ismer valaki valami frappánsabbat is. Mindegy, ez működik.

 

Üdv.

Előzmény: Fferi50 (24309)
Fferi50 Creative Commons License 2014.02.27 0 0 24309

Szia!

 

Nézd meg ezt a linket légy szives:

 

http://snipplr.com/view/54755/

 

Remélem, segít.

 

Üdv.

Előzmény: Törölt nick (24305)
Sztai Creative Commons License 2014.02.26 0 0 24308

Szerintem két elegáns megoldás van.

1. Advanced Filter (Irányított szűrés)

2. Feltételes formázás és színre szűrés

 

1.

A kritérium tábla fejléce üres marad, alatta a kritérium pedig: =közép('az első szám hivatkozása';9;1)="3"

Ez a képlet igaz v. hamis eredményt ad.

Az Adatok>Rendezés Szűrés>Irányított szűrést kiválasztva, a lista tartománynak megadjuk a szűrendő táblát (fejléccel együtt), a kritérium tartománynak pedig, a két cellát (felső üres, alsó tartalmazza a képletet), majd OK.

 

2.

Feltételes formázást ua-zal a képlettel csináljuk mint a kritérium tartománynál.

ezután színre szűrhetünk

 

 

Remélem segítettem

Sztai

Előzmény: manonos (24282)
tbando Creative Commons License 2014.02.26 0 0 24307

De lehet, hogy megfelel ha simán pdf file-ba mentesz.

Előzmény: tbando (24306)
tbando Creative Commons License 2014.02.26 0 0 24306

Igaz. Elkapkodtam a választ. 

 

Esetleg kísérletezhetsz a File/Nyomtatás/ MS Office Documents Image Writer-rel.   Tif fileban ment. Kijelölhető a tartomány és  meghatározható a képméret. Babrásnak igérkezik, de hátha összejön.

Előzmény: Törölt nick (24302)
Törölt nick Creative Commons License 2014.02.26 0 0 24305

Szia!

 

Köszönöm, ezt ismerem, ezzel nem lehet a képet lementeni egy fájlba.

Egyébként, a vba help a Range.CopyPicture témában nem igazán jó segítség.

 

Üdv.

Előzmény: Fferi50 (24304)
Fferi50 Creative Commons License 2014.02.26 0 0 24304

Szia!

 

Range.CopyPicture Appearance:=xlScreen, Format:=xlBitmap   kimásolja képernyőre, jpg,bmp vagy gif formátumhoz.

 

Továbbiakat a vba helpben találhatsz róla.

 

Üdv.

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

készíti

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

Makró kézsíti a táblázatot, ezzel kellene megoldani a képmentést is.

Előzmény: tbando (24301)
tbando Creative Commons License 2014.02.26 0 0 24301

Képmetsző?

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

Sziasztok!

 

Tudna valaki segíteni abban, hogyan lehet makróval egy adott tartományt (egy kis táblázatot) képként elmenteni? Pl. a Range("A1:I18") tartományt hogy lehet elmenteni valamilyen képformátumban? 

Törölt nick Creative Commons License 2014.02.25 0 0 24299

Köszönöm, akkor marad a makrós beállítás.

Előzmény: Fferi50 (24296)
tbando Creative Commons License 2014.02.25 0 0 24298

Hogy ez mennyire úgy van ahogy írod, elmesélek egy összehasonlítást:

 

Mivel egy 3000 soros 730 oszlopnyi excel függvényeket tartalmazó táblázatom áttekintése meglehetősen nehézkesnek bizonyult, ezért udf függvényekkel lecsökketettem 80 oszloposra, tehát, hogy csak a 80 célparaméter-oszlopot tartalmazta, a részeredmények segédoszlopait nem. A 730 oszlopos 26 MB-t foglalt el a winchesteren, a 80 oszlopos pedig 6-t.  Jelentős megtakarítás.

 

De…. Amíg a 730 oszlopos a 1 másodpercen belül abszolválta a számításokat, addig a 80 oszloposnál ez másfél percig tartott. Ez még akkor is mellbevágó különbség, ha figyelembe vesszük, hogy az udf makróim eléggé sallangosak lehettek. Feltételezem, ha te csinálod a makrókat, akkor akár 1 perccel is gyorsabban végére jutna a számításoknak. De a különbség még így is nagyon jelentős lenne.  

Előzmény: Törölt nick (24290)
Fferi50 Creative Commons License 2014.02.25 0 0 24297

Szia!

 

Igy van, az excel képességeit nem lehet makróval megverni, ezért én is a legnagyobb mértékig igyekszem kihasználni azokat.

Az előbbi esetnél speciel arra gondoltam, hogy a több száz/ezer soros szám átalakítást nyilván makróval sokkal-sokkal egyszerűbb és gyorsabb megcsinálni, mint a billentyűzetet verni. Aztán a rendezést,szűrést meg csinálja az excel a makróból meghívva a funkciót.

 

Üdv.

Előzmény: Törölt nick (24290)
Fferi50 Creative Commons License 2014.02.25 0 0 24296

Szia!

 

A százalékot direktben nem tudod az adatokra íratni, ahhoz külön "technika" kell (pl. másik diagram a százalékokból és átlátszóan ráhelyezni, feliratot direktben a grafikonra helyezni, stb.)

Viszont, ha a 100%-ig halmozott oszlopdiagramot választod diagram tipusként, akkor a tengelyen % jelenik meg, az adatokfeliratok pedig maradhatnak az értékek.

Ha meglevő diagramot alakítasz át, akkor valószínűleg a tengelyt is újra kell formáznod (számforma -  %), hogy megfelelő legyen.

 

Üdv.

Előzmény: Törölt nick (24291)
Fferi50 Creative Commons License 2014.02.25 0 0 24295

Szia!

 

Viszont a fix hosszúságú számazonosítóknál a vezető nullákra is szükség van általában - ezt pedig számformátumban nem lehet megoldani, csak szövegként. (És akkor máris lehet "normálisan" keresni...)

Másrészt elég sok esetben betü-szám kombináció az azonosító.

 

Üdv.

Előzmény: Delila10 (24294)
Delila10 Creative Commons License 2014.02.25 0 0 24294

Akár.

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

Adószám?

Előzmény: Delila10 (24292)
Delila10 Creative Commons License 2014.02.25 0 0 24292

A házi feladaton kívül az jutott eszembe, hogy a 11 jegyű számok cikkszámok, vagy rajzszámok, miegyebek, ahol jelenthet az a bizonyos 9. valamit.

Előzmény: Fferi50 (24289)
Törölt nick Creative Commons License 2014.02.25 0 0 24291

Sziasztok!

 

Az előzményekhez kapcsolódva azt szeretném megkérdezni, hogyan lehetséges halmozott (excel 2007) oszlopdiagramnál az adatfeliratoknál a % értékeket is megjeleníteni, ill. azt, ha ez alapból nem lehetséges, hogy lehet ezeket valahogy megjeleníteni?

 

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

Előzmény: Törölt nick (24018)
Törölt nick Creative Commons License 2014.02.25 0 0 24290

Egyszer láttam egy makrót, ami egy soksoros táblázaton elvégzett egy bizonyos műveletet. A makró részben a makrórögzítővel készült, és működött ugyan, de tele volt sallangokkal, több, mint egy percig futott, továbbá sokat kellett hozzá kézzel állítgatni bizonyos cellatartalmakat ahhoz, hogy jól működjön.

Na mondom, majd jövök én. Majd én tudományos alapon szépen megírom a makrót, nulláról kezdve, tizedére rövidítve a kód hosszát. Meg is írtam, gyönyörű volt, és fél óra alatt a feladat elvégzésének negyedéig jutott.....

 

Csak azért mondtam el, mert az Excel beépített műveletei (szűrés, sorbarendezés, képletek, stb.) nagyságrendekkel gyorsabbak, mint a VBA, és ez akkor jön ki igazán, amikor sok sor van.

Előzmény: Fferi50 (24289)
Fferi50 Creative Commons License 2014.02.25 0 0 24289

Hát ilyen sok sor esetén nálam már eséllyel befigyel egy makró:)

Úgy gondolom, az ilyen kérdések inkább házi feladatból táplálkoznak, mint valódi problémákból.

 

Üdv.

Előzmény: Delila10 (24287)
Delila10 Creative Commons License 2014.02.25 0 0 24288

A FIX függvény 3. paramétereként be kell írni az IGAZ -at, másképp ezres tagolást ad szóközökkel, és a felborul a 9. karakterre történő szűrés. 

Előzmény: Delila10 (24287)
Delila10 Creative Commons License 2014.02.25 0 0 24287

Szia!

 

Képzeld, ha nem 40, hanem 400 sor van.

 

A FIX(hivatkozás;0) függvény szöveggé alakítja egy segédoszlopban a számokat, és itt már lehet szűrni a kérdőjeles, csillagos formáddal.

Előzmény: Fferi50 (24286)
Fferi50 Creative Commons License 2014.02.25 0 0 24286

Szia!

 

Egy kicsit elgondolkodtam, hogyan lehetne a számokat is szűrni "szövegként" helyben. Excel 2010-ben az alábbi műveletekkel megoldható:

 

Kijelölöm a számokat tartalmazó tartományt (pl. A2:A40). Jobb egérgomb - Cellaformázás - szám fül - szöveg. Ezután a kijelölésen F2 - Entert nyomkodva végigmegyek.

Ennek hatására - de csak ennek hatására - a számokat szövegként tárolja az excel (ezt beállított hibakezelés esetén ki is jelzi a hibajelzésben).

Autoszűrő, majd az autoszűrő beállítása: szövegszűrő - egyenlő  ????????3?? vagy ????????3*

Ekkor azok a számok maradnak meg, amelyeknek a 9. karaktere 3.

 

Ha később ismét azt szeretném, hogy az excel számként tárolja az adott területen levő értékeket, akkor a területet kijelölve a hibajelzésben kiválasztom az átalakítás számmá opciót (ez általános formátumra állítja vissza a cella formátumát), majd ha szüksége, akkor átállítom a cella formátumát számra.

 

Üdv.

 

P.S Végigcsinálni gyorsabb, mint elolvasni, de persze nem olyan gyors, mint a Te segédoszlopos megoldásod.

 

 

 

Előzmény: Delila10 (24283)
Delila10 Creative Commons License 2014.02.24 0 0 24285

Szívesen.

Biztos vagyok benne, hogy előbb-utóbb rájöttél volna.

Előzmény: manonos (24284)
manonos Creative Commons License 2014.02.24 0 0 24284

Köszönöm, sosem jöttem volna rá....

Előzmény: Delila10 (24283)
Delila10 Creative Commons License 2014.02.24 0 0 24283

Tegyük fel, hogy az adataid az A oszlopban vannak, és van címsorod. Felveszel egy segédoszlopot, legyen ez a B. A B2 képlete:

 

=HA(KÖZÉP(A2;9;1)="3";1;0)

 

Ezt végig másolod az A oszlop mellet, majd a B oszlopot szűröd az 1-es érték szerint.

Előzmény: manonos (24282)
manonos Creative Commons License 2014.02.24 0 0 24282

SZiasztok!

 

Kérlek segítsetek! Egyszerűen nem jövök rá, hogy hogyan lehet leszűrni a következőt:

 

Adott egy oszlop, amely soraiban 11 jegyű számok találhatóak, nekem le kellene szűrni azokat, melyek 9. számjegye "3". Sajnos a számok között nincs logikai kapcsolat.

 

 

Előre is köszönöm

 

Manonos

 

 

Delila10 Creative Commons License 2014.02.24 0 0 24281

Ezt javasoltam én is.

"A makró elején megszünteted a lapvédelmet, a végén visszaállítod."

:)

 

Úgy látszik, eddig nem próbáltam cserét indítani védett lapon.

Előzmény: pimre (24280)
pimre Creative Commons License 2014.02.24 0 0 24280

A replace esetén rá is találtam egy ezzel kapcsolatos beszélgetésre: http://social.msdn.microsoft.com/Forums/office/en-US/9f0f9e73-9462-41b9-88ea-5179774d0cbb/replace-does-not-work-on-a-protected-sheet-even-with-userinterfaceonly-set-to-true

 

És itt egy nagyon aranyos kis polémia bontakozott ki a moderátor és egy felhasználó között arról, hogy ez most bug, vagy feature.

 

Az Insert/Delete esetére nem találtam ilyen konkrét jelzést, de a tapasztalatom azt mutatja, hogy ugyanez a helyzet. 

 

Az igazság az, hogy a makró elég nagy, akár órákig is lehet benne adatokat felvinni, módosítani, listázni, úgy hogy nem szívesen tenném, hogy az elején megszüntetem a védelmet, és a végén vissza. Annál is inkább, mert a biztonság kedvéért minden egyes érdemi módosítás (pl. egy rekord teljes felvitele) után mentem az állományt. 

Ezért inkább azt teszem, hogy ahol ilyen problémás parancs adódik, ott kikapcsolom a védelmet, majd a végrehajtás után azonnal vissza. Nem szeretném, hogy úgy mentődjön véletlenül is az adatállomány, hogy nem védettek a munkalapok.

Előzmény: Delila10 (24279)
Delila10 Creative Commons License 2014.02.24 0 0 24279

Nem vettem még észre, hogy valami ne működne ezzel az utasítással, de másképp is megoldhatod.

A makró elején megszünteted a lapvédelmet, a végén visszaállítod.

Előzmény: pimre (24278)
pimre Creative Commons License 2014.02.24 0 0 24278

Kiderült, hogy nem a kód átalakításával volt a gond, hanem azzal, hogy időközben átírtam az adatlapok kezelését, és az érintett munkalapot védetté tettem. Hogy egy felhasználó ne tudjon esetleg akaratlanul belepiszkálni. A szándékos hülyeséget úgysem tudom megakadályozni, de nem is akarom.

 

És abba már beleszaladtam korábban, hogy védett munkalapokon hiába van beállítva a userinterfaceonly:=True kapcsoló, a program nem hajtja végre a Replace parancsot. Most kiderült, hogy az Insert/Delete is ebbe a körbe tartozik. És milyen bosszús leszek, ha később még órákat kell eltöltenem azzal, hogy mely parancsok viselkednek még hasonlóan. Szerinted vannak még ilyenek?

Előzmény: Fferi50 (24270)
Delila10 Creative Commons License 2014.02.24 0 0 24277

Azt, hogy nagyon jó ez a fórum, szerencsére olyanoktól is sokszor hallom, akik csakis kérdezni (vagy olvasni) járnak ide. :)

Előzmény: Fferi50 (24276)
Fferi50 Creative Commons License 2014.02.24 0 0 24276

Hibakeresésnél én is ezt játszom. De mivel eddig nagy ívben kerülten a formokat - enélkül is elég jól elvoltam pár x évet - nem volt világos, hogyan kell átlépni a modal=true futtatás esetén a "más programok és ablakok nem láthatók, amíg a form be nem zárult" (hevenyészett fordítás) kitételt.

 

Szóval - nagyon jó ez a fórum.

Előzmény: Delila10 (24275)
Delila10 Creative Commons License 2014.02.24 0 0 24275

Mikor egy hibát akarok felfedezni, kijavítani, a Private Sub sorhoz beteszek a töréspontot. Formról indítok, és máris a makróban vagyok, ahol lépésenként tudok sorról sorra haladni. Ilyenkor bármit megadhatok az immediate ablakban.

 

Előzmény: Fferi50 (24267)
Fferi50 Creative Commons License 2014.02.24 0 0 24274

Szia!

 

Minden, amit  korábban írtam erről a selectről, visszavonva.

 

Üdv.

 

 

Előzmény: Delila10 (24244)
tbando Creative Commons License 2014.02.24 0 0 24273

Talán valamelyik guru meg tudja mondani, hogy  az alábbi miért van?

 

Lejjebb már említettem, hogy az excelem  az

 

Application.Run "ATPVBAEN.XLAM!Mcorrel", Sheets("adatlap").Range(adattomb), _

        "", "O", True

 korreláció parancsot csak úgy hajlandó végrehajtani, ha elötte bebillentyűzök egy  kamu Adatelemzés parancsot.  Például azt hogy Adat/Adatelemzés/Mégse.  Ezután amíg be nem csukom az excelt  normálisan csinálja  korrelációkat, akárhány füzetben.

 

Gondoltam,  a billentyüs  inicializálást kiváltom  egy sendkeys rutinnal.  Sikerült is, de egy kicsit furcsán.  Ugyanis  2x kell  sendkeys rutint indítani.  A második indítástól már megcsinálja a korrelációszámításokat. Az elsőnél vajon miért nem?

 

Ezt a makrót kell 2x indítanom.    

 

Sub korrelacio()

korrinic   ’sendkeys makró

Application.Run "ATPVBAEN.XLAM!Mcorrel", Sheets("adatlap").Range(adattombcim), _

        "", "O", True

End Sub

pimre Creative Commons License 2014.02.24 0 0 24272

És elfelejtettem mondani, hogy nem csak immediate parancsokat lehet ilyenkor kiadni, hanem bele is lehet javítani a programba, ami azonnal érvényesül a még nem végrehajtott sorokon.

Előzmény: pimre (24268)
Fferi50 Creative Commons License 2014.02.23 0 0 24271

Ok. Értem.

Előzmény: pimre (24268)
Fferi50 Creative Commons License 2014.02.23 0 0 24270

Szia!

 

Nem tudom mi lehet a baj, nálam megcsinálja az aktív munkalapra és a nem aktívra is.

 

Milyen hibát jelez?

 

Üdv.

Előzmény: pimre (24269)
pimre Creative Commons License 2014.02.23 0 0 24269

Más: egy ponton 3 sort szeretnék beszúrni. Eddig a következőt használtam:

 

wb.Activate
wb.Rows("1:3").Select 
Selection.Insert Shift:=xlDown

 

Szerettem volna helyette a következőt, de a program hibát jelez.

 

wb.Rows("1:3").Insert Shift:=xlDown ' A select helyett

 

Mit csinálok rosszul?

pimre Creative Commons License 2014.02.23 0 0 24268

Ha a program megállt egy Stop parancsnál, vagy egy breakpointnál, akkor engedi használni.

Előzmény: Fferi50 (24267)
Fferi50 Creative Commons License 2014.02.23 0 0 24267

Szia!

 

Hogyan tudod az immediate ablakot használni addig, amíg a userform aktív?

 

Üdv.

Előzmény: pimre (24266)
pimre Creative Commons License 2014.02.23 0 0 24266

A tegnapi válaszom kicsit elhamarkodott volt. Ez a technika valóban működik, és szükség esetén alkalmazni is fogom. Természetesen a megfelelő óvatossággal. És köszönöm.

Előzmény: Delila10 (24244)
pimre Creative Commons License 2014.02.23 0 0 24265

Köszönöm, kipróbáltam, és valóban jöttek az új gondok, szóval egyelőre letettem róla. Annál is inkább, mert még egyszer megnéztem Delila javaslatát, és azzal azt hiszem, mégiscsak meg lehet oldani a dolgot.

Előzmény: Törölt nick (24255)
kabat Creative Commons License 2014.02.23 0 0 24264

Köszönöm!

Sikerült!

és már továbbfejlesztettem

Előzmény: Fferi50 (24263)
Fferi50 Creative Commons License 2014.02.23 0 0 24263

Szia!

 

Feltételes formázás -uj szabály - formázandó cellák kijelölése képlettel - értékek formázása ha ez a képlet igaz:

 

=DARABTELI($C$7:$K$7;">0")>0

 

Ez legyen az A7 cella feltételes formázási szabálya.

 

Üdv.

Előzmény: kabat (24262)
kabat Creative Commons License 2014.02.23 0 0 24262

Az elsőt sikerült megoldani, de a második nem megy.

Izgalmasnak találom magam megfejteni, de a súgó csak olyan eseteket mutat, ahol a vizsgált cellák színeződnek át, nem egy azoktól független. Ha képletet kapok, hidd el, ki fogom elemezni, az a típus vagyok...

 

Köszönöm

 

2)

Az A7 cellában szereplő értéket szeretném pirosra színezni, ha a C7 től K7 celláig terjedő cellák bármelyikében 0-tól eltérő eredmény szerepel. Nem a vizsgált cellákat szeretném színezni, csak az A7-et.

Előzmény: Fferi50 (24261)
Fferi50 Creative Commons License 2014.02.22 0 0 24261

Szia!

 

Értettem a kérdésedet! Azt is értem, hogy kezdő vagy az excelben. Ezért van hozzá a help. Megírtuk, hogy merre felé keresgélj a helpben.

Mégegyszer:

 

SK javasolta a darabteli függvényt az első kérdésed megoldására. Ehhez (is) vannak példák a helpben.

 

Második kérdésedre jó a feltételes formázás. Erről is olvashatsz a helpben.

 

Sok-sok évvel ezelőtt, amikor elkezdtem excellel foglalkozni, még sehol nem volt internet, sőt még az excel se volt magyar, de a help akkor is ott volt már.

 

Sokkal hamarabb meg fogod érteni a működését, ha magad jársz utána, mintha készen kapsz - egyébként nem biztos, hogy jól működő - képleteket.

 

Üdv.

Előzmény: kabat (24260)
kabat Creative Commons License 2014.02.22 0 0 24260

Bocsánat, de nem értem... Részletezem a kérdésem:

 

Két kérdés:

 

1)

=E7*HA(H7="Gizi" vagy "karcsi" vagy "béla" stb (ezeket a neveket egy bővíthető oszlopban gyűjteném);-1;0)

 

Az E7 oszlopban szereplő érték -1 szeresét szeretném a cellába beszúrni, ha a H7 cellában a Gizi szöveg szerepel. Eddig ok, de ezt a képletet szeretném továbbfejleszteni, hogy a Gizi helyett egy oszlopban (legyen J oszlop) szereplő több (bármelyik, de nem 0) szövegre is megjelenjen az érték 

 

2)

Az A7 cellában szereplő értéket szeretném pirosra színezni, ha a C7 től K7 celláig terjedő cellák bármelyikében 0-tól eltérő érték szerepel. Nem a vizsgált cellákat szeretném színezni, csak az A7-et.

 

Előre is köszönöm

 

Gergő 

Előzmény: Fferi50 (24259)
Fferi50 Creative Commons License 2014.02.22 0 0 24259

Szia!

 

1. darabteli függvény -> irány az excel help

2. kérdésed a feltételes formázás megoldja - > irány az excel help

 

Üdv.

Előzmény: kabat (24258)
kabat Creative Commons License 2014.02.22 0 0 24258

Köszönöm, de nem tudom mi az a darabteli függvény. -kezdő excel-es vagyok

Előzmény: Sánta Kutya (SK) (24257)
Sánta Kutya (SK) Creative Commons License 2014.02.22 0 0 24257

A H7="Gizi" helyére tegyél egy darabteli függvényt, a feltétel, h. >0.

Előzmény: kabat (24256)
kabat Creative Commons License 2014.02.22 0 0 24256

Két kérdés:

 

1)

=E7*HA(H7="Gizi";-1;0)

 

Az E7 oszlopban szereplő érték -1 szeresét szeretném a cellába beszúrni, ha a H7 cellában a Gizi szöveg szerepel. Ezt a képletet szeretném továbbfejleszteni, hogy a Gizi helyett egy oszlopban (legyen J oszlop) szereplő több (bármelyik, de nem 0) szövegre is megjelenjen az érték 

 

2)

Az A7 cellában szereplő értéket szeretném pirosra színezni, ha a C7 től K7 celláig terjedő cellák bármelyikében 0-tól eltérő érték szerepel.

 

Előre is köszönöm

 

Gergő 

Törölt nick Creative Commons License 2014.02.22 0 0 24255

Bocs, rosszul mondtam, False-ra kell állítani. Akkor lehet kapcsolgatni a munkafüzet meg a formok között.

Előzmény: pimre (24252)
pimre Creative Commons License 2014.02.22 0 0 24254

Hát igen, kínomban én is ilyen megoldásokat alkalmazok a munkafüzetek megtekintése helyett:-(((

Előzmény: Fferi50 (24245)
pimre Creative Commons License 2014.02.22 0 0 24253

Lehet, hogy félreértettelek, de nekem az ilyen parancsok immediate ablakban történt kiadása után sem sikerül megnéznem a munkafüzeteket.

Előzmény: Delila10 (24244)
pimre Creative Commons License 2014.02.22 0 0 24252

Kösz, megnéztem. Nekem a ShowModal eleve True, tehát így nem tudom megoldani.

Előzmény: Törölt nick (24243)
forzajuve Creative Commons License 2014.02.22 0 0 24251

neem, dehogy:)

Előzmény: Sánta Kutya (SK) (24250)
Sánta Kutya (SK) Creative Commons License 2014.02.22 0 0 24250

Lehet bonyolultan is csinálni, ha ez az igény!

Előzmény: forzajuve (24249)
forzajuve Creative Commons License 2014.02.22 0 0 24249

nagyon köszi!!! valahogy bonyolultabbra számítottam:)

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

=SZUMHA(A:A;A1;B:B)

Előzmény: forzajuve (24247)
forzajuve Creative Commons License 2014.02.22 0 0 24247

Sziasztok!

 

A következőkben kérném a segítségeteket: van egy táblázatom, az A oszlopában terméktípusok (vmelyik többször, vmelyik csak egyszer fordul elő, a B oszlopban mindegyikhez egy összeg. A lényeg, hogy a C oszlopba szeretnék beszúrni egy függvényt, ami terméktípusonként a maximális szumma összeget mutatja minden sorban, valahogy így:

 

termék   érték   összeg

a            20       20

b            10       70

b            15       70

c            30        30

b            45        70

d            15         15

 

milyen függvénnyel, vagy annak kombinációjával lehetne ezt megoldani?

 

köszönöm!

Fferi50 Creative Commons License 2014.02.21 0 0 24246

Bár a Ctrl+break azért elég veszélyes egy form-nál.

 

 

Előzmény: Fferi50 (24245)
Fferi50 Creative Commons License 2014.02.21 0 0 24245

Szia!

 

Szia!

 

Már ha tudod az immediate ablakot használni, de nem, a userform nem engedi, mert vár arra, hogy valami történjen vele.

Ha modal = false , akkor viszont tudsz az immediate ablakban "dolgozni". Csak akkor a program nem vár arra, hogy kitöltsd a formot!!!

 

De miért kellene select??? Pláne, ha konkrétan tudod, mit szeretnél megnézni?

 

Javaslom a debug.print utasításokat a userformot használó függvényekbe a kritikus helyekre, akkor a form futása közben átváltva a VBA ablakra, láthatod az immediate-ban a kiiratásokat (persze nem árt megfelelő információt fűzni hozzá a kiiratásban), vagy akár utólag is megnézhető a "történet".

 

Szóba jöhet még az Msgbox használata megfelelő helyen a programban.

 

Esetleg a Ctrl+break -kel megállítás (vagy Stop a programban).

 

Üdv.

 

 

 

Előzmény: Delila10 (24244)
Delila10 Creative Commons License 2014.02.21 0 0 24244

Az immediate ablakban kiadott sheets("Munka1").select, range("x1").select, és hasonlók megmutatják a kérdéses részt a füzetben, csak vigyázz, mert az lesz az aktuális pozíció. Érdemes visszaállni.

Előzmény: pimre (24242)
Törölt nick Creative Commons License 2014.02.21 0 0 24243

Megoldást nem tudok. Ha a ShowModal property-t true-ra állítod, az megold bizonyos problémákat, de kreál helyette újakat.

Előzmény: pimre (24242)
pimre Creative Commons License 2014.02.21 0 0 24242

Program tesztelés közben az ember gyakran megnézi az aktuális, vagy valamely másik munkafüzetének az állapotát, ellenőrzi a benne végbement változásokat futás közben is. Userformokkal dolgozva viszont az a tapasztalatom, hogy abban a pillanatban, hogy a Form inicializálását befejezte a program, és felhasználói intézkedésre vár, onnan kezdve nem engedi megnézni a munkafüzeteket, ami néha nagyon kellemetlen. Csak a teszt félbehagyásával, a programból kilépve tudom megnézni az eredményt. 

 

Van erre valamilyen megoldás?

djmorphy Creative Commons License 2014.02.20 0 0 24241

Szia!

 

Kicsit este volt... :D

Köszi szépen!

Előzmény: Fferi50 (24206)
Fferi50 Creative Commons License 2014.02.19 0 0 24240

Szia!

 

Szivesen. Én is sokat tanultam közben az érvényesítésről meg egyéb dolgokról is. (A legelső verzióm működött, de lényegesen bonyolultabb volt, úgyhogy "lemondtam róla".)

 

Üdv.

Előzmény: KelemenGy (24238)
tbando Creative Commons License 2014.02.19 0 0 24239

Kösz.

Előzmény: Fferi50 (24234)
KelemenGy Creative Commons License 2014.02.19 0 0 24238

Köszönöm a foglalkozást! Áttanulmányozom és fejlődöm képletezősdiből :)

Előzmény: Fferi50 (24231)
pimre Creative Commons License 2014.02.19 0 0 24237

Kösz a kérdést. Meg is oldotta a dolgot. A parancssor a következő volt:

 

wb.Rows(kezdosor & ":" & utsor).Sort _

Key1:=Range(oszlop1 & sor), Order1:=xlAscending, _

Key2:=Range(oszlop2 & sor), Order2:=xlAscending, ...

 

És szokásom szerint a range elé elfelejtettem a munkalaphivatkozást betenni /ws.Range(oszlop1 & sor)/. Ezt pótolva nem kaptam hibaüzenetet.

Előzmény: Fferi50 (24236)
Fferi50 Creative Commons License 2014.02.19 0 0 24236

Az előzőekhez:

 

Bár szerintem még ez sem igaz, mert most néztem meg az egyik programom, ahol egyáltalán nem aktív az a munkalap, amelyen a sortot végrehajtom.

Úgyhogy jó lenne látni azt a kódot, ami ezzel az üzenettel kiakadt.

 

Üdv.

Előzmény: Fferi50 (24235)
Fferi50 Creative Commons License 2014.02.19 0 0 24235

Szia!

 

A rendezendő tartományt tartalmazó munkalapnak kell aktívnak lenni.

 

Üdv.

Előzmény: pimre (24232)
Fferi50 Creative Commons License 2014.02.19 0 0 24234

Szia!

 

Application.Displayalerts=False

 

Üdv.

Előzmény: tbando (24233)
tbando Creative Commons License 2014.02.19 0 0 24233

Már volt róla szó, de nem találom: Milyen vba parancs kell ahhoz, hogy a munkalaptörlés figyelmeztetés nélkül töröljön?

pimre Creative Commons License 2014.02.19 0 0 24232

Egy újszülöttnek minden vicc új: Tegnap beleütköztem abba, hogy a sort method is azok közé tartozik, ahol nem elég ws.range(...).sort szintakszissal hivatkozni a rendezendő területre, hanem aktívnak is kell lennie, különben egy elég nehezen értelmezhető hibaüzenetet kapok ("Érvénytelen rendezési hivatkozás. Győződjön meg arról, hogy a hivatkozás a rendezni kívánt adatok közt szerepel, és hogy az első Rendezze mező nem ugyanaz, vagy nem üres.").

 

És logikusnak vettem, hogy a rendezendő területet tartalmazó munkalapnak kell aktívnak lennie. A gyakorlatban viszont úgy vettem észre, hogy elég volt, ha a munkafüzet aktív, ha a fenti szintaxissal rendezek. Jól látom?

 

Azért kérdezem, mert a help ugyan szóba hozza az aktív régiót (Sorts a PivotTable report, a range, or the active region if the specified range contains only one cell), de nem tisztázza pontosan, hogy minek kell aktívnak lennie az alkalmazás során.

Fferi50 Creative Commons License 2014.02.19 0 0 24231

Szia!

 

Itt a javított változat:

 

 

http://data.hu/get/7435094/szabiterv_vedett.xlsx

 

Üdv.

 

(Csak egy síma copy kellett hozzá.)

Előzmény: KelemenGy (24228)
Törölt nick Creative Commons License 2014.02.19 0 0 24230

Azért ez elég furcsa. A legkülönbözőbb op környezeteben, jó pár gépen futtattam, egyszer sem jelzett hibát. Minden műveletet hibátlanul végrehajtott. Ezen a gépen sem csak mióta Win 8.1 van rajta. Ezen is csak egy idő után. A nehézség abból adódott, hogy más hibát jelzett mint ami valójában volt. Ha kiszedtem a jelzett select utasítást amit nehezményezett akkor összeomlott a file, a hibakareső bezárta.

Előzmény: Sánta Kutya (SK) (24226)
Fferi50 Creative Commons License 2014.02.19 0 0 24229

Szia!

 

Még van benne egy kis baki, mindjárt javítom, addig ne másold tovább.

 

Üdv.

Előzmény: KelemenGy (24228)
KelemenGy Creative Commons License 2014.02.19 0 0 24228

Köszönöm!

 

Látom túl sokáig nem tartott a lapvédelem :)

 

Jól néznek ki ezek az érvényesítések, sokat tudok belőlük tanulni.

Előzmény: Fferi50 (24227)
Fferi50 Creative Commons License 2014.02.19 0 0 24227

Szia!

 

Egy kicsit foglalkoztam a munkafüzeteddel. A Munka1 munkalapon láthatod az eredményt.

Az első negyedév érvényesítéseit megcsináltam, a többi már gyerekjáték - másolás, irányított beillesztés - érvényesítést.

Így csak az SZ,B és az adott napi dátum írható be a cellába. Ha nem akarod, hogy a szombati/vasárnapi dátumhoz lehessen SZ és B-t írni, akkor az érvényesítés képletéből kiveszed ezeket (nyilván, akkor nem kell a vagy).

 

Az M oszlop az adott naptári sorban levő napokat fogadja el kezdő napnak. Az N oszlop az M oszlopban levő dátumtól az adott sorban levő utolsó dátumig fogad el értéket.

 

Az O oszlop viselkedése: Ha az L oszlopban van adat, azt írja be, ha nincs akkor az M-N oszlopban szereplő két időpont közé eső munkanapokat számolja ki. A szabadnapokat úgy számolja, hogy vasárnap az mindig szabad, a többi szabadnap (beleértve a nem dolgozós szombatokat is) az AA oszlopban van felsorolva.

 

Az O oszlop végére ís írtam képletet, az L oszlop végén levő képlethez hozzáadtam az O oszlop összegét is.

 

Remélem, tudod használni.

 

http://data.hu/get/7435062/szabiterv_vedett.xlsx

 

Üdv.

Előzmény: KelemenGy (24204)
Sánta Kutya (SK) Creative Commons License 2014.02.19 0 0 24226

Ha ez a hiba két évig nem szólt, akkor rekordot állítottál fel. :-)

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

Köszönöm a szurkolást. Ha igaz, megtaláltam a hibát. Ez a file kb. 2 éve megy evvel a hibával  és smmi nem utalt arra, hogy gond van. Kifelejtettem egy konvertálást ezért egy stringhez hozzáadtam integert.

Előzmény: Fferi50 (24223)
Törölt nick Creative Commons License 2014.02.18 0 0 24224

Az hiszem találtam valami nagyon csúnya hibát. Most vizsgálom valóban ez okozza e a problémát. Csak az nem megy a fejembe, hogy miért csak egy gép mutatja ki. Sehol másutt nem omlott össze ettől a file.

Előzmény: Fferi50 (24223)
Fferi50 Creative Commons License 2014.02.18 0 0 24223

Szia!

 

Próbáld egyenként visszarakosgatni a formra az elemeket és a hozzájuk tartozó inicializálást és eseménykezelőket.

Előbb - utóbb kiderül, melyik volt a bűnös.

 

Üdv.

 

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

Szevasz!

 

A form-ot kiürítettem. Akkor simán megnyílik.

Ha az inicializálást ürítem ki akkor elszáll tehát valamelyik subrutin hibás vagy a form-hoz csatlakozóvalamelyik külső makro.

A dolog érdekessége, hogy egy control boxból manuálisan megnyitva hibátlan, csak a file indításakor az automatikus megnyitás hibázik.

Előzmény: Fferi50 (24221)
Fferi50 Creative Commons License 2014.02.18 0 0 24221

Szia!

 

google keresés:

Application-defined or object-defined error 57121

Nagyjából 1 500 találat (0,40 másodperc)

 

Lehet, hogy közte van a Te problémád megoldása is.

 

Üdv.

Előzmény: Törölt nick (24219)
pimre Creative Commons License 2014.02.18 0 0 24220

Van, aki találkozott hasonló gonddal, de az nem modulban, hanem munkalapon futtatta a programot. Pl.: http://www.mrexcel.com/forum/excel-questions/565137-application-defined-object-defined-error.html

 

A helyedben én leírnám a feladat lényegét és a szűkebb környezetet. És talán azt a függvényt, szubrutint, amelyikben a hiba jelentkezik. Nagy program esetén ilyenkor szoktam 1-2 órai munkával egy lecsupaszított tesztprogramot írni, amelyiken a hiba még jelentkezik, de nem tartalmazza a külvilág számára érdektelen részleteket.

 

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

OK,Ok. tisztában vagyok vele gondoltam valaki találkozott ezzel a gonddal.

Egyelőre a formban találtam egy hibát. Elfelejtettem egy numerikus változót átkonvertálni stringbe pedig előírásszerűen átkellet volna. csak Az érdekes az, hogy csak egy számítógépen száll el ez a file.

Előzmény: Fferi50 (24218)
Fferi50 Creative Commons License 2014.02.18 0 0 24218

Szia!

 

Akkor most azt szeretnéd, ha "távolbalátással" kitalálnánk, hogy mit akarsz a programmal csinálni, milyen kódokkal és az miért nem működik?

 

Szeretném, ha elolvasnád a fórum használati utasítását és aszerint járnál el. (Tudod, ott a nyitotta: Cooper alatt levő apróbetűs rész.)

 

A képzett gondolatolvasók sajnos nem ezt a fórumot látogatják.

 

Üdv.

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

Közben megnéztem: ha egyedül van a ThisWorkbookban akkor is hozza ezt a hibát.

Ha az utána következő form megnyitásával indulok akkor elszáll az egész file.

 

Előzmény: Fferi50 (24215)
Törölt nick Creative Commons License 2014.02.18 0 0 24216

Húúú az nagyon sok.

Előzmény: Fferi50 (24215)
Fferi50 Creative Commons License 2014.02.18 0 0 24215

Szia!

 

Rá lehetne nézni a Debug utáni kódokra?

 

Üdv.

 

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

Segítséget kérnék.

Sheets("inputTabla").Select

Állandóan hibát hoz. Ha kiveszem akkor elszáll a file.

 

 

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

pimre Creative Commons License 2014.02.18 0 0 24213

Hát igen, kettővel nekem is megy, csak nem érzem elegánsnak.

Persze, ha belegondolok, hogy a kézi irányított beillesztésnél sem lehet egyszerre több beállítást megadni, elképzelhető, hogy a program is ezt követi, és ott sem lehet. Persze egy With - End With közé beírva a felsorolást talán nem is néz ki olyan csúnyán.

Előzmény: seven update sorbi (24212)
seven update sorbi Creative Commons License 2014.02.18 0 0 24212

Nem tudom, hogy lehet-e egy paranccsal, de kettővel igen: először kiadod az egyik paste(special) parancsot, a rákövetkező sorban a másikat. Ennek persze csak akkor van értelme, ha a két paste parancs nem üti egymást, eredményben különböznek egymástól.

Előzmény: pimre (24210)
Eredő Vektor Creative Commons License 2014.02.18 0 0 24211

Hali!

 

Egy xlam bővítményt van értelme hálózati meghajtón elhelyezni? A cél az, hogy a "gazdagépek" ezt használják - tehát ne lokálisan. Ez azért lenne jó, mert szabadon tudnám módosítani, fejleszteni a felhasználók igénye szerint, nem kéne lokálisan vacakolni vele.

 

Van valakinek ilyesmivel tapasztalata?

pimre Creative Commons License 2014.02.18 0 0 24210

Akkor már csak egy (?) kérdésem maradt. Ha egyidejűleg szeretnék több tulajdonságot alkalmazni az átvételnél, pl.:  Paste:=xlPasteColumnWidths és  Paste:=xlPasteAllExceptBorders, akkor ezt meg tudom oldani egyetlen parancssorban?

 

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

Úgy van.

Előzmény: pimre (24208)
pimre Creative Commons License 2014.02.18 0 0 24208

Az iménti kérdésem azt hiszem sztornó. Végiggondoltam a dolgot, hát nem kell nekem egyetlen paranccsal elintéznem a dolgot. Külön parancsba teszem a copy részt, és külön sorban a

wbmásik.Range(...).PasteSpecial Paste:=xlPasteAllExceptBorders, ... parancsot.

Előzmény: pimre (24207)
pimre Creative Commons License 2014.02.18 0 0 24207

Sziasztok, gyomlálgatom a programomból a korábban használt select, copy paste parancsokat. És egy ponton elakadtam.

 

Amit korában úgy oldottam meg, hogy select, majd copy, azután célterület kiválasztás után

 

' Selection.PasteSpecial Paste:=xlPasteAllExceptBorders, Operation:=xlNone, stb. 

 

azt most wb.Range(...).Copy wbmásik.Range (...) szintaxissal. Eddig nincs is gondom, de a bemásolás beállításait (például xlPasteAllExceptBorders) sehogyan sem tudom belepréselni.

 

Mi a megoldás?

Előzmény: Fferi50 (24206)
Fferi50 Creative Commons License 2014.02.17 0 0 24206

Szia!

 

Ha félmunkát végzel.....

 

Ezt hova sikkasztottad?

 

Mondjuk a MF1 D oszlopába beteszel egy képletet: D1: = A1 & B1

 

Üdv.

Előzmény: djmorphy (24205)
djmorphy Creative Commons License 2014.02.17 0 0 24205

Szia!

 

Képletnek a tiedet használtam

 

https://www.dropbox.com/s/4wfjgelth3tkw5p/help.xlsx

Előzmény: Fferi50 (24203)
KelemenGy Creative Commons License 2014.02.17 0 0 24204

Valahogy sejtettem, hogy makró lesz a vége, ahhoz meg nem értek. Marad a kézzel beírás :)

Előzmény: Fferi50 (24202)
Fferi50 Creative Commons License 2014.02.17 0 0 24203

Szia!

 

Mutass egy képet lsz.

 

Szerintem vagy amiatt lehet probléma, hogy a B oszlopban szám van, vagy a lenyíló listában nem pontosan ugyanazok az értékek, mint a MF1-ben. A szóközök (vagy annak látszó egyéb karakterek) tudnak ám bonyolítani dolgokat.

 

Nézd meg lsz. hogy az A & B összefűzés hány betű és a MF2 lenyílókban levő összefűzés hány betű hosszú.

 

Üdv.

Előzmény: djmorphy (24201)
Fferi50 Creative Commons License 2014.02.17 0 0 24202

Szia!

 

Azért ez elég necces, hiszen egy héten akár több nem összefüggő napot is ki lehet írni. Akkor mit írsz a kezdő és vég dátumhoz?

Továbbá mindkét cellát le kéne korlátozni az adott hét napjaira, ami azért elég melós (vagy egy jó makró kell hozzá). A naptárrészt pedig tele kellene képletezni az M,N oszlopkra hivatkozással, ezt szerintem csak makróval lehet megúszni .

 

Ráadásul, ha a naptárrészbe beírod  az SZ vagy a B betűt, az adott dátum azonnal használhatatlanná válik egy olyan képlet számára, amiből dátumot szeretnél az M,N oszlopba beírni. Úgy látszik, ez megint csak makró.

 

Üdv.

Előzmény: KelemenGy (24198)
djmorphy Creative Commons License 2014.02.17 0 0 24201

Szia!

 

Köszönöm! De miért írja nekem, hogy "#hiányzik"?

Pedig most már copy paste-tem is.

Előzmény: Fferi50 (24200)
Fferi50 Creative Commons License 2014.02.17 0 0 24200

Szia!

 

Mondjuk a MF1 D oszlopába beteszel egy képletet: D1: = A1 & B1 

 

Aztán a MF2 C oszlopának képlete: C1: =INDEX(MF1!C1:C2000;HOL.VAN(A1 & B1;MF1!D1:D2000;0))

 

A MF1 C és D oszlopát akár el is nevezheted  és akkor névvel hivatkozhatsz rá.

 

Üdv.

 

 

Előzmény: djmorphy (24199)
djmorphy Creative Commons License 2014.02.17 0 0 24199

Köszönöm szépen a segítségeket. Közben a nagyfőnök is rájött, hogy a színezés nagyon szép csak ő sem tud vele dolgozni ezért marad a "sürgős" "nagyon sürgős" drop-down list :D (amit aztán én feltétellel kiszínezek neki :D)

 

Lenne egy kérdésem:

Hogyan lehetne  fkeres-nek több feltételt megadni. Vagy a következő dolgot kiíratni a MF2-re:

 

 

Munkafüzet1

A1: rendelészszám  található

B1: egy poziciószám  található

C1: terméknév található

 

Rendelésszámból lehet több azonos is. A rendelésszám+ poziciószám mondja meg végül mi a termék neve

Pl:

1,

A1:abc123(rendelés sz.)

B1:10(pozició)
C1:kóla(termék név)

 

2,

A1:abc123(rendelés sz.)

B1:20(pozició)

C1: Ice tea(termék név)

 

Tehát mind a kettőnek ugyan az a rendelés száma így az sajnos nem lehet egyed ID-ként használni. Így ha abc12310-ről beszélek akkor az a kóla abc12320-nál meg Ice teát iszogatok

 

A Munkafüzet2-n pedig szeretném összedobni a listát két drop-down listből. Amint definiáltam a Rendelésszámot és a Poziciót elvileg meg tudom mondani mi a termék neve csak éppen függvényt nem tudok rá :D

 

A1-ben egy drop down listből kiválasztom a Rendelésszám-ot(pl Abc123) 

B1-ben egy drop-down listből kiválasztom a  Poziciószámot(pl 20)

C1-be a függvény kiírja a munkafüzet1-ről , hogy éppen Ice Tea-ról beszélek

 

 

 

 

 

 

Előzmény: Törölt nick (24194)
KelemenGy Creative Commons License 2014.02.17 0 0 24198

Köszönöm! Így azért elegánsabb :)

 

Esetleg az M és N oszlopok automata kitöltésére van valakinek ötlete? Ezek elvileg azt a célt szolgálnák, hogy egy hosszabb szabi intervallum kezdő és záró dátumát megadják. 

 

Itt egy példa, hogy mire is gondoltam.

Előzmény: Fferi50 (24197)
Fferi50 Creative Commons License 2014.02.17 0 0 24197

 

Szia!

 

Ha nem ragaszkodsz a legördülő listához akkor az alábbi

 

egyéni érvényességi feltételt beírva a képlethez

 

=VAGY(W7="B";W7="SZ";ÉS(W7>DÁTUM(2013;12;31);W7<DÁTUM(2015;1;3)))

 

ugyanazt az eredményt éred el.

 

A hibaüzenetbe pedig beírod, hogy csak B és SZ, valamint a tárgyévi dátumok írhatók be.

 

Üdv.

Előzmény: KelemenGy (24196)
KelemenGy Creative Commons License 2014.02.17 0 0 24196

Az 1. verzió oldott meg nekem nemrég egy problémát. Szabadság tervező excel-táblát szerkesztettem, abban akartam azt megoldani, hogy a naptár része csak megadott formájú karakterláncot engedjen beírni.

 

A megengedett értékek:

- SZ

- B

- 2014.01.01-2015.01.02-ig terjedő dátum range

 

A dátumrange-re külön van megoldás, akkor viszont mást nem is enged, ebbe nem fér bele az "SZ" és a "B". Ha az "SZ" és a "B" van megadva egyéni értéknek, akkor meg a dátum nem megy. Maradt az a megoldás, hogy egy jó távoli oszlopban szépen felsoroltam az összes szóbajöhető értéket, majd annak a tartományát adtam meg adatérvényesítési feltételként.

 

Külön eljátszottam azzal is, hogy a táblázat képletezése védett legyen, viszont maradjanak szerkeszthető tartományok, hiszen az egésznek a lényege az, hogy ha a delikvens valahová "SZ"-t ír, akkor azt szabadság-igényként kezeli és kilistázza egy másik oszlopban.

 

Ha érdekel valakit a táblázat:

https://www.dropbox.com/s/0k0bsydttyy8yd7/szabiterv_vedett.xlsx

Előzmény: Fferi50 (24188)
Fferi50 Creative Commons License 2014.02.17 0 0 24195

Szia!

 

Ebben teljesen igazad van. A HA függvény - esetleg többször használva - biztosan megoldja a problémát.

 

(Ráadásul én még ki is hagytam azt az esetet, amikor nem sárga,vagy piros a cella és így nem kellene benne szövegnek lennie - vagy törölni az előző szöveget -. Hiába, hamar munka ritkán jó.)

 

Üdv.

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

Hát szerintem nem cellaszín alapján kellene azokat az értékeket makróval beírni, hanem függvénnyel, ugyanazokat a feltételeket felhasználva, amelyek a színezés alapját adják.

Mellesleg, ha a színezés feltételes formázással ment, akkor sem tbando, sem Fferi makrója nem fog működni. De erre már biztosan rájöttél...

Előzmény: djmorphy (24189)
Fferi50 Creative Commons License 2014.02.17 0 0 24193

Szia!

 

Ezt a makrót beírva egy modulba, elvégzi a kivánt feladatot. Hozzárendelheted egy billentyűkombinációhoz, vagy meghívhatod másik makróból.

 

Sub beiro()
Const PIROS = 255, SARGA = 65535
Dim cl As Range
For Each cl In ActiveSheet.UsedRange.Columns("D").Cells
    If cl.Offset(0, -1).Interior.Color = PIROS Then cl.Value = "Nagyon fontos"
    If cl.Offset(0, -1).Interior.Color = SARGA Then cl.Value = "Fontos"
Next
End Sub

 

Üdv.

Előzmény: djmorphy (24189)
djmorphy Creative Commons License 2014.02.17 0 0 24192

Köszi!

Előzmény: tbando (24191)
tbando Creative Commons License 2014.02.17 0 0 24191

Bemásolod ezt a makrófüggvényt egy vba modulba.  Innenntől a  =szini(cella)  fgv. lekérdezi a cella kitöltő szinkódját.  Amit aztán megadhatsz mint feltételt.

 

Function szini(cella)

Application.Volatile

szini = cella.Interior.ColorIndex

End Function

Előzmény: djmorphy (24189)
murray Creative Commons License 2014.02.17 0 0 24190

megvan , köszönöm!

Előzmény: Fferi50 (24188)
djmorphy Creative Commons License 2014.02.17 0 0 24189

Sziasztok!

 

Hogyan lehetne megvalósítani, hogy:

a C oszlopban változó szöveg van írva. Ez kaphat egy színt ami sárga vagy piros. És a D oszlopba odaíratom a sárgához, hogy "fontos" a piroshoz pedig "nagyon fontos". Ami meg nincs kiszínezve oda nem kerül semmi?

Fferi50 Creative Commons License 2014.02.17 0 0 24188

Szia!

 

Ezt hívják adatérvényesítésnek. E 2010-ben adatok - érvényesítés címen találod meg.

 

Két lehetőséged van:

 

  1. A munkalap egy részén felsorolod egymás alatt levő cellákban a választási lehetőséget, majd az adatérvényesítésnél kiválasztod a listát és forrásaként megjelölöd/kiválasztod az előbbi felsorolást.
  2. Az adatérvényesítésnél a listát kiválasztva a forráshoz közvetlenül beírod a lista elemeit pontosvesszővel elválasztva.

Üdv.

Előzmény: murray (24187)
murray Creative Commons License 2014.02.17 0 0 24187

T. Urak egy egyszerű (nem nekem) excel 2010 kérdésem van.

oszlopokbanban a megnevezés alatt ilyen cella jobboldalán lévő lenyíló menűben szeretnék választható adatokat elhelyezni. 2003as emlékeim szerint ilyen adatbázisféleképpen kell feltölteni   de 2010ben nem találom sehol. hol? hogy?

köszi előre  is.

Fferi50 Creative Commons License 2014.02.16 0 0 24186

Még valami!

 

Be kell még tenni egy

 

wd.Documents(1).Saved = True

 

sort a 

 

wd.Quit

 

sor elé.

 

Ha ezt kihagyod, akkor a word nem záródik be  és az excel "hangoskodni fog" miatt.

 

Remélem, valami hasznosítható belőle.

 

Üdv.

Előzmény: Fferi50 (24185)
Fferi50 Creative Commons License 2014.02.16 0 0 24185

Szia!

 

Az alábbi kóddal tetszőleges word dokumentumba el tudod menteni a hivatkozást:

 

Sub hivatkozik()
Dim hiv As Hyperlink, wd As Word.Application
Set hiv = Sheets("Munka1").Hyperlinks.Add(anchor:=Range("A1"), Address:=eleresiutnev, TextToDisplay:="Ez egy link")
'MsgBox hiv.Address
Set wd = CreateObject("Word.Application")
wd.Visible = True
wd.Documents.Add
Sheets("Munka1").Range("A1").Copy
wd.Documents(1).Range(0, 0).PasteExcelTable False, False, False
wd.Documents(1).Saveas2 dokunev
wd.Quit
Application.CutCopyMode = False
End Sub

 

Az elmentett dokumentumban műxik a hivatkozás.

 

Üdv.

Előzmény: Mittu21 (24181)
Fferi50 Creative Commons License 2014.02.16 0 0 24184

Szia!

 

Ez OK, csak neki azt kellene elérni, hogy egy e-mailben küldje el a megnyitandó linket VBA-ból. Az e-mailt kezelő Outlook pedig hanyagolja a szóközöket a linkben.

 

Üdv.

Előzmény: pimre (24183)
pimre Creative Commons License 2014.02.16 0 0 24183

Az első verzióra találtam egy egyszerűbb megoldást: A Workbooks("Munkafüzet1") helyett egyszerűbb a ThisWorkbook.

De, hogy miért kell a parancs előtt megnevezni egy nyitott munkafüzet nevét, arról halvány segédfogalmam sincs.

Előzmény: pimre (24182)
pimre Creative Commons License 2014.02.16 0 0 24182

Nem tudom segít-e, de én kétféle szintaxissal is el tudom érni egy fájl megnyitását:

 

1.: Workbooks("Munkafüzet1").FollowHyperlink elérési út & "\" & fájlnév

 

2.:  Dim myShell As Object

      Set myShell = CreateObject("WScript.Shell")

      majd:

      myShell.Run elérési út & út & "\" & fájlnév

 

 

 

Előzmény: Mittu21 (24173)
Mittu21 Creative Commons License 2014.02.16 0 0 24181

Köszi szépen az eddigi segítségedet :)

Előzmény: Fferi50 (24179)
Fferi50 Creative Commons License 2014.02.16 0 0 24180

Szia!

 

A DoEvents arra jó, hogy elvegye a vezérlést az exceltől és végrehajtson olyan feladatot, amit máshonnan pl. a billentyűzetről kapott, vagy kiírasson valamit, stb.

Pl. egy végtelen ciklust nem tudsz általában megállítani Ctrl+Break-kel. De ha benne van a ciklusban a DoEvents, akkor ez érzékeli a billentyűzetet és előbb-utóbb megáll. vagy egy formon ki akarod íratni a közbenső eredményeket, akkor abban is segít egy jó helyen levő DoEvents.

 

Vagyis, ha az excel nagyon el lenne "magával foglalva", akkor egy jó helyen levő DoEvents kibillenti ebből a helyzetből.

 

Üdv.

 

Ps. Sajnos nekem elfogytak az ötleteim, a "liba" viszont megmaradt ezek szerint. Fogalmam nincs, miért viselkedik veled így az excel...(Nem vesztetek össze jó alaposan mostanában :-))?)

 

 

Előzmény: tbando (24178)
Fferi50 Creative Commons License 2014.02.16 0 0 24179

Szia!

 

Akkor más ötletem nincs, mint száműzni a szóközöket a mappák nevéből és aláhúzással helyettesíteni. (Mintha korábban lett volna is ilyen tiltás...)

 

Másik: jó alaposan megnézni az Outlook szabályait, hogyan lehet szóközös hivatkozást "megetetni" vele. Valami biztosan van a Helpben vagy valamelyik hasonló fórumon.

 

Üdv.

Előzmény: Mittu21 (24177)
tbando Creative Commons License 2014.02.16 0 0 24178

Sajnos ezek sem müködnek.  De hagy kérdezzem, az mit jelent, hogy a DoEvents átadja a vezérlést az oprendszernek. Mikor szokták ezt használni? Honnan tudja az oprendszer, hogy miután megkapta a vezérlést mit csináljon? 

Előzmény: Fferi50 (24172)
Mittu21 Creative Commons License 2014.02.16 0 0 24177

Így sajnos semmire nem hivatkozik.

Előzmény: Fferi50 (24176)
Fferi50 Creative Commons License 2014.02.16 0 0 24176

Szia!

 

Mi van, ha az egész elérési útvonalat aposztrófok (') közé teszed?  Ez általában segíteni szokott az excelben és sql-ben is. Nem tudom Outlook mit szól hozzá, de egy próbát megér szerintem.

 

Üdv.

Előzmény: Mittu21 (24175)
Mittu21 Creative Commons License 2014.02.16 0 0 24175

Sajnos nem jó. Vagyis jó, csak nem úgy, ahogy nekem kellene. Ha csak a fájl elérési útvonalát akarnám kiíratni, akkor elég lenne az Activeworkbook.Fullname parancs. De az a gond, hogy az elérési útvonalban van több mappa nevében is szóköz, így nem az egész útvonalat ismeri fel hivatkozásnak az outlook, hanem csak a szóközig.

 

 

"Az anyagigénylő elérési útvonala: \srv01vxyHasznos AnyagokIGÉNYELT ANYAGOKLabor_anyagigénylő 2014.02.16. 11 ó 46 p 22 mp.xlsm"

 

Szóval ennyi látható és a \srv01vxyHasznos mappát akarja megnyitni, de ilyen nincs.

Előzmény: Fferi50 (24174)
Fferi50 Creative Commons License 2014.02.16 0 0 24174

Szia!

 

A hivatkozást hiperlinkként a következők szerint tudod tartalommal megtölteni:

 

Set hivatkozas = Sheets("Munka1").Hyperlinks.Add(anchor:=Range("A1"), Address:=utvonal & FN & ".xlsm", TextToDisplay:="Ez egy link")

 

Elküldeni pedig szerintem elég lehet a hivatkozas.address, de ebben nem vagyok biztos.

 

Üdv.

Előzmény: Mittu21 (24173)
Mittu21 Creative Commons License 2014.02.16 0 0 24173

Sziasztok!

 

Olyan kérdésem van, hogy vba-ban hogyan lehet olyan változót létrehozni, amely egy hiperhivatkozás? Egyik, céges szerveren lévő fájlra kellene mutatnia teljes elérési útvonallal.

Próbálkoztam úgy, hogy Dim hivatkozas as Hyperlink, de nem jött össze. Nem tudtam értéket adni neki.

Amúgy úgy jönne össze az értéke, hogy hivatkozas = utvonal & FN & ".xlsm"

 

Dim hivatkozas As Hyperlink

                    'E-mail kuldese az anyagraktarnak
                    hivatkozas = utvonal & FN & ".xlsm"
                    Call emailkuld("xy@xy.hu", FN, "Az anyagigénylő elérési útvonala: " & hivatkozas)

 

És erre ezt a hibát dobja: Object variable or With block variable not set.

 

Próbálkoztam a súgóval, de valahogy nem jött össze a megoldás :/

 

az emailkuld paraméterei: címzett, tárgy, üzenet

Fferi50 Creative Commons License 2014.02.16 0 0 24172

Szia!

 

A DoEvents sort csak beírnám a korrelációszámítást meghívó sor elé. Azt csinálja, hogy átadja a vezérlést az oprendszernek, majd ha elvégezte az ott levő feladatokat (vagy ha nincs mit), akkor vissza az excelnek.

 

Aztán arra is gondoltam,  hogy felvenném makróval az adatelemzés meghívását. Utána ezt meghívnám a másik makró előtt (pl. rátenném egy billentyűkombinációra).

 

Üdv.

 

 

Előzmény: tbando (24171)
tbando Creative Commons License 2014.02.15 0 0 24171

Szia!

 

Az Analysis ToolPak VBA kikapcs/bekapcsot már kipróbáltam, hatástalan. Hogy mit kéne csinálni a Doevents-sel nem látom. A SendKeys-re én is gondoltam, de ott meg azt nem tudom, hogyan kéne rálépni a Menüszalagra, ahol aztán elugrálhatok az Adatelemzésig. De kösz a tanácsokat.

 

 

Előzmény: Fferi50 (24170)
Fferi50 Creative Commons License 2014.02.15 0 0 24170

Szia!

 

Mi lenne, ha a makróban kikapcsolnád, majd bekapcsolnád az Analysis Toolpack - VBA -t? Erre sem reagál?

Még esetleg egy DoEvents-re gondolnék a makróban a korreláció meghívása előtt.

 

Van még a Sendkey, amivel szimulálni tudod a billentyű nyomkodást, de az ugye többek szerint - egyetértve velük - elég bizonytalan megoldás.

 

Amúgy szerintem "nem szokványos" az excel ilyetén módon viselkedése, lehetnek ott más bajok is még, amire eddig nem derült fény.

 

Üdv.

Előzmény: tbando (24169)
tbando Creative Commons License 2014.02.15 0 0 24169

Van egy új fejlemény. Tehát az van, hogy a makró látszólag nem csinál semmit. De rájöttem, hogy elég ráklikkelni az Adatelemzésre, majd a Mégse gombra, és innentől normálisan fut a makró.

 

E fenti szimptómákból valaki talán rájön a hiba okára. És az elháríthatóságára. Én most azt próbálnám ki, ha tudnám hogyan kell, hogy makróval klikkelnék e 2 gombra. 

Előzmény: Fferi50 (24168)
Fferi50 Creative Commons License 2014.02.14 0 0 24168

Szia!

 

Lehet csak az Analysis Toolpack - VBA-t kellene eltávolítani és újratelepíteni.

 

Üdv.

Előzmény: tbando (24167)
tbando Creative Commons License 2014.02.14 0 0 24167

Az excelem magyar, ATPVBAEN.xlam meg be volt kapcsolva. Amikor kikapcsoltam, hiányolta az 1004-es hibaüzenettel, amikor visszakapcsoltam, lefutott, de nem adta a korrelációs táblát, mig nem csináltam egy billentyüs Adatelemzéses feladatot. Utána végig oké volt amíg az excelből ki nem léptem.  Ha nálad nem volt szűkség az Analysis Toolpak VBA billenytüs feladattal való inicializálására, akkor egyértelműen az én excelemmel van valami gubanc. Előbb utóbb rákényszerülök az újra húzására.

 

 

Előzmény: Fferi50 (24166)
Fferi50 Creative Commons License 2014.02.14 0 0 24166

Nem angol az Exceled véletlenül?

Előzmény: tbando (24164)
Fferi50 Creative Commons License 2014.02.14 0 0 24165

Szia!

 

Első körben hibával kiakadt és az ATPVBAEN.xlam hiányára panaszkodott. Ha azt bekapcsoltam a bővítmény kezelővel, vagy a leírt parancsot bettem a makróba, akkor lefutott rendesen.

Ezért azt gondolom, nálad nincs bekapcsolva a bővítmény "Analyzis Toolpack - VBA".

Ezt megnézheted a bővítménykezelőben, mielőtt elindítod a makrót.

 

Üdv.

Előzmény: tbando (24164)
tbando Creative Commons License 2014.02.14 0 0 24164

A válaszodból azt vettem ki, hogy behívtad filet. Próbáltad futtatni, és normálisan végig ment.

Vagy Run Time Error 1004-gyel kiakadt, de a ToolPak VBA bekapcs után megjavult.

 

Így volt?

 

Ezt fontos tudnom, mert ha igen, akkor nem az excellel van baj, hanem az én excelemmel.  De hogy mi, az lehet hogy sosem derül ki. Az ATPVBAEN.xlam-t feltehetőleg látja, mert a makró hibaüzenet nélkül végig megy, csak látszólag nem csinál semmit, amíg nem csinálok manuálisan egy tetszőleges Adatelemzési feladatot. Még csak korrelációszámításnak sem kell lennie. Pl. teszteltem a mozgóátlaggal, ami már elég volt a makró hibátlan futásához.

 

Meg arra is rájöttem, hogyha csak a makrót tartalmazó füzetet zárom be, de az excelből nem lépek ki, akkor az újbóli filebehívás után szintén müködik a makró. De ha az excelből is kilépek, akkor a makró futásához már szükség lesz az ATPVBAEN manuális aktiválására.

Szóval elég gubancos. Ha van ötleted, örömmel tesztelném. Meg kérdem újra, nálad milyen lépések után futott le a makróm?

 

Előzmény: Fferi50 (24161)
Törölt nick Creative Commons License 2014.02.14 0 0 24163

Micsoda kitartás :)

Előzmény: pimre (24162)
pimre Creative Commons License 2014.02.14 0 0 24162

Egy mondat erejéig még visszatérve a feladatodhoz. Azzal ugye tisztában vagy, hogy az a bizonyos T103-as összegzésed nem csinál semmit az égvilágon? Se kéthetenkénti zárással, sem másképp. Mert Fferi ezért kérdezgette, hogy mire való, és nem a könyvelési titkaidra volt kíváncsi.

Előzmény: gondwana555 (24147)
Fferi50 Creative Commons License 2014.02.14 0 0 24161

Szia!

 

A bővítménykezelőben be kell jelölnöd az Analysis Toolpack - VBA nevű bővítményt. Ha ez megtörtént, akkor lefut a makró hibátlanul.

Az Analysis maradhat bekapcsolva is, de lehet ki-be kapcsolgatni. Az a fontos, hogy mielőtt a korreláció számítást meghívod, legyen bekapcsolva.

Makróból a bekapcsolás     AddIns("Analysis ToolPak – VBA").Installed = True

 

Remélem, működik nálad is.

 

Üdv.

Előzmény: tbando (24160)
tbando Creative Commons License 2014.02.14 0 0 24160

Tanácsot szeretnék kérni,  hogy mit kéne csinálnom, hogy normálisan müködjön ez a makró?

 

Sub korrelacio()

Dim adattomb$

Sheets("adatlap").Activate

adattomb = Range(Range("c10"), Range("c10").Offset(0, -1).End(xlDown).End(xlToRight)).Address

 

Application.Run "ATPVBAEN.XLAM!Mcorrel", Sheets("adatlap").Range(adattomb), _

        "", "O", True

End Sub

 

Azaz az Adatlapon  a C10:K21 tartományt ( fejléc és számadatok )  elnevezi  adatomb-nek, majd az oszlopok közti  korrelációkat kiírja egy új lapra. OK.  Lementem a füzetet, majd újra behívom.  A makró hibaüzenet nélkül végig megy,  de nem számolja ki a korrelácókat.  Csinálok egy tetszöleges  korrelációszámítást  manuálisan, nem feltétlenül a makróban rögzített tartományon (Adatok/Adatelemzés/Korrelációszámítás/fejléccel-újlapra), majd futtatom a makrót, perfektül müködik,  de csak míg le nem mentem.  Az  újbóli behívás után ismét kell egy manuális korrelációszámítás a makró működéséhez.

 

Egy netes tanács szerint a Tools-References-Atpvbaen.xls-t kéne  aktiválni. Ezt meg nem találom.

 

A füzetet feltettem  a data.hu-ra.

 

Letöltőlink :

http://data.hu/get/7417344/korrelacioproblem.xlsm

Sánta Kutya (SK) Creative Commons License 2014.02.13 0 0 24159

Nincs oka tiltani, hiszen szintaktikailag helyes. Egyébként mindenki úgy hülye, ahogy akar. Kivéve az osztályozásnál. :-)

 

El tudok képzelni olyan teszthelyzetet, amikor egy összegből ideiglenesen kiveszem a tagokat, és csak egy marad, de nem szedem le a szumot, mert végül vissza akarom majd tenni a többi tagot.

Előzmény: pimre (24150)
seven update sorbi Creative Commons License 2014.02.13 0 0 24158

Semmi különös, csak zavar a látványban, hogy ki van emelve az aktív cella. Harmonikusabb lenne a megjelenés a vastag kiemelés nélkül.

 

Egyébként meg sok mindent le lehet kapni az elsődleges kinézetből (sor- és oszlopazonosítók, munkalapfülek, stb.), ezért akár az is elképzelhetető (lenne), ha ezen is lenne egy-két feature a beállításokban.

 

Köszi a választ Neked is, és Fferinek is.

Előzmény: Törölt nick (24156)
Fferi50 Creative Commons License 2014.02.13 0 0 24157

Szia!

 

Akkor honnan fogja tudni a felhasználó - vagy Te - hogy melyik az aktív cella éppen?

 

Üdv.

Előzmény: seven update sorbi (24155)
Törölt nick Creative Commons License 2014.02.13 0 0 24156

Erre tudtommal nincs mód, de létezhet kerülő út, ami bizonyos esetekre alkalmazható. Milyen célból szeretnéd ezt?

Előzmény: seven update sorbi (24155)
seven update sorbi Creative Commons License 2014.02.13 0 0 24155

Bocsánat, megkérdezném még egyszer, hátha most sikerül.

 

Azt szeretném megkérdezni, hogy az excelben az aktív cella vastag körvonalát el lehet-e valahogy tüntetni úgy, hogy közben az aktív cella aktív marad? (A beállítások között néztem, nem találtam, de lehet, hogy ott is be lehet ezt állítani. Ha makróval lehet, az is jó lenne.)

Oxaliplatin Creative Commons License 2014.02.13 0 0 24154

Hali!

 

Köszi a tippet az be is van kapcsolva, de az a probléma, hogy azt írja ki, hogy a védett cellák miatt nem lehet módosítani.

Előzmény: Eredő Vektor (24152)
Fferi50 Creative Commons License 2014.02.13 0 0 24153

Szia!

 

Hát az excel meg a VBA az legalább kettő. Máshol is vannak eltérések (pl. igaz értéke).

 

Cserébe viszont a Közép harmadik paraméterének akármekkora pozitív számot beírhatsz. :-)

 

Üdv.

Előzmény: pimre (24150)
Eredő Vektor Creative Commons License 2014.02.13 0 0 24152

ahol a lapvédelmet rárakod, ott lehet engedélyeket megadni. Van "Rendezés" is.

Előzmény: Oxaliplatin (24151)
Oxaliplatin Creative Commons License 2014.02.13 0 0 24151

Sziasztok!

 

Az volna a kérdésem, hogy:

 

adott egy védett munkalap, ami tartalmaz 4-5 zárolt oszlopot és kb 10-15 oszlop nem zárolt, tehát módosítható oszlopot, még levédés előtt betettem 3 oszlopra szűrőt, hogy ha valaki megnyitja a fájlt tudjon szűrni kénye-kedve szerint, azt viszont nem tudom hol kell beállítani, hogy ezeket a szűrt eredményeket lehessen különböző módon rendezni is. Erre esetleg tudja valaki a megoldást?

pimre Creative Commons License 2014.02.13 0 0 24150

Ami különösen bosszantó, hogy az Excel ezt megengedi. Bezzeg a =KÖZÉP(A1;2) képletnél követeli a harmadik argumentumot, holott tudhatná, hogy ilyenkor az ember a 2. karaktertől kezdve mindent szeretne az eredményben. (ráadásul programban a mid() függvény tudja ezt)

Előzmény: Sánta Kutya (SK) (24149)
Sánta Kutya (SK) Creative Commons License 2014.02.12 0 0 24149

Pedig ha tudnád, milyen gyakori ez a kezdőknél! Amint a SZUM (A1+A2) is.

Előzmény: Delila10 (24148)
Delila10 Creative Commons License 2014.02.12 0 0 24148

Eddig én is úgy tudtam, hogy egy összegzéshez legalább két adatra van szükség.

Erről a szum(T103)-ról egy régi favicc jut eszembe.

 

– Miben hasonlít 1 veréb?

– Abban, hogy mind a két szárnya egyforma, különösen a bal.

Előzmény: Fferi50 (24145)
gondwana555 Creative Commons License 2014.02.12 0 0 24147

Bocs, megint lefoglalt a munka...T103... vagy máskor más cella = Kézipénztár nettó bevétel, kéthetenkénti zárással. Kis cég, kis foci... saját mini "könyvelői" excel-el, egyedi igény szerint alakítva. 

Köszönöm, és most már legyen a fórum a további szakkérdéseké. Tényleg jó a fórum és szuper, hogy itt vagytok, akik segíteni tudtok!

Üdvözlettel: gondwana 

 

 

Előzmény: Fferi50 (24145)
Törölt nick Creative Commons License 2014.02.12 0 0 24146

De hát már válaszolt a kérdésre, többször is.

Előzmény: Fferi50 (24145)
Fferi50 Creative Commons License 2014.02.12 0 0 24145

Szia!

 

Azt, hogy az új művelettől lassult-e be, egyszerű módon ellenőrizheted:

Vedd ki az új műveletet és nézd meg, hogy úgy is lassú-e.

Ha nem, akkor biztosan az új művelet a ludas benne.

Ha igen, akkor marad a további találgatás.

 

Üdv.

 

Ui: azt továbbra sem értem, mit lehet egy db cellán (T103) összegezni, milyen adat lehet a T103 cellában?

Bocs, de kifúrja az oldalam a kíváncsiság (:)

 

Üdv.

Előzmény: gondwana555 (24141)
gondwana555 Creative Commons License 2014.02.12 0 0 24144

:-)

Autóalkatrészek. Bevétel Kiadás.

Nem ez a tény segített a megoldásban, hanem Fferi50

De tetszik a szöveg :-)

 

Előzmény: pimre (24142)
gondwana555 Creative Commons License 2014.02.12 0 0 24143

Szia! Működik!! Köszönöm!! :-))))

Előzmény: Fferi50 (24140)
pimre Creative Commons License 2014.02.12 0 0 24142

Off: A napokban egy kiváló politikusunkkal (ilyen is van) volt egy beszélgetés. A kérdező azzal kezdte a beszélgetést, hogy van-e olyan kérdés, amit nem szeretnél, ha feltennék. Amire a vicces válasz a következő volt: "A, nyugodtan kérdezz bármit, nincs olyan kérdés, amit ne tudnék megkerülni."

Ez itt most mintha aktuális lenne:-)

Előzmény: Fferi50 (24140)
gondwana555 Creative Commons License 2014.02.12 0 0 24141

Heuréka! Értem! 

A munkafüzet folyamatosan bővülő, több ismétlődő és változó tételből összeálló nettó adatot gyűjt egyetlen cellába, ami a kapcsolódó munkalapokon kiinduló tételként jelenik meg, és munkalaponként más és más szempont szerint rendeződik, igény szerint, egy munkalapon akár 10 féle műveletet is végrehajtva. Nem vagyok nagy excel spiller, csak igen lelkes felhasználó,  így tudtam kitalálni, biztosan lenne más módszer is. Eddig biztonságosan működött, évek óta. Hm..... idén új műveletet is beépítettem....ez terhelhette meg? De hát egy excel ennél sokkal bonyolultabb dolgokra is képes! Az biztos, hogy a lezárt intervallum adatai már csak a archiválás miatt kellenek, számítást már ne is végezzen az a rész, amit javasolsz, megoldja ezt is.

Köszönöm! :-)

gondwana

Előzmény: Fferi50 (24140)
Fferi50 Creative Commons License 2014.02.11 0 0 24140

Szia!

 

Azok az adatok amelyek már hónapok/évek óta nem változnak, de még mindig képlettel számolod ki az értéküket, maradhatnak ugyanazon a helyen ahol voltak, csak értékké átalakítva (ahogy írtam, kijelölöd, másolás, ugyanabba a cellába/tartományba irányított beillesztés értéket). Természetesen így az adott képlet el fog veszni, de gondolom ez már nem bír jelentőséggel.

 

Másrészt viszont továbbra is kiváncsi lennék rá, hogy az =szum('fájlneve'!T103) mit és hogyan összegez?

 

Üdv.

Előzmény: gondwana555 (24139)
gondwana555 Creative Commons License 2014.02.11 0 0 24139

Szia, ez is jól hangzik, holnap megpróbálom. Ugyanazon a munkalapon belül? Vagy pakoljam át egy új munkalapra sorban a már nem használt, de a visszakereshetőség miatt megőrzendő részeket? Jobb volna, ha ott maradhatna, a használt munkalapon.

Jelzem majd, hogy boldogultam vele.

És köszönöm!

 

Előzmény: Fferi50 (24138)
Fferi50 Creative Commons License 2014.02.11 0 0 24138

Szia!

 

Esetleg meg lehetne nézni, hogy melyek azok az adatok, amelyek már nem változhatnak.

Azokat egy másolás - irányított beillesztés értékkel állandóvá teheted és így nem foglalja tovább a számítási kapacitást.

A beillesztéseknél pedig az oszlop,sor ugyanúgy tolódik az értékkel is, mint a képlettel.

 

Ezzel nagymértékben gyorsulhat a kiszámolósdi.

 

Üdv.

Előzmény: gondwana555 (24136)
Master of beginners Creative Commons License 2014.02.11 0 0 24137

Sokára vettem észre a módosításod, ezért elbütykölgettem vele egy ideig. :D

 

Kiválóan működik, köszönöm szépen a gyors segítséget! (Azoknak is akik írtak a problémámra, csak nem reagálnék külön.)

 

További szép napot! :)

MoB

Előzmény: Zoxo Whitney (24133)
gondwana555 Creative Commons License 2014.02.11 0 0 24136

Ha  nem is lóhalálában, de csinálja átállítás után amit kell. Szuper! Köszönöm. 

gondwana

Előzmény: Fferi50 (24121)
gondwana555 Creative Commons License 2014.02.11 0 0 24135

Válaszoltam, megköszöntem, elbúcsúztam.

Ellenőrizd.

Előzmény: Törölt nick (24127)
gondwana555 Creative Commons License 2014.02.11 0 0 24134

Bocs, ne haragudj, elsodort a munka, most jöttem vissza. Igazad lehet, azonnal megcsinálom.

Hogy állandóan a kezdő sorokban legyenek az aktuális adatok, (más is dolgozik vele) minden váltáskor (kéthetente) a munkalap elejére szúrok be sorokat és oda másolom az előző részt, amit az aktuális munkafüzet adatokkal (másik cella) frissítek. Igen, lehet, hogy ez sok....egész évben kéthetente elmászik az a cella, ami adja az aktuális adatot..... bár idáig rendesen működött. Köszi és még egyszer bocs!

Előzmény: Fferi50 (24126)
Zoxo Whitney Creative Commons License 2014.02.11 0 0 24133

Na, én is tévedtem:

=HA(A1<=HA(B1=0;1;B1); 

            MIN(0,25;B1)  -  MIN(A1;0,25)   +     MAX(HA(B1=0;1;B1);0,75) - MAX(A1;0,75);

            1-MAX(A1;0,75)   +    MIN(B1;0,25))

Előzmény: Zoxo Whitney (24131)
Zoxo Whitney Creative Commons License 2014.02.11 0 0 24132

Nem jó!

Beleszámolja a "nappali" órákat is 06:00 és 18:00 között!!!

 

12:00:00-tól 11:00.00-ig a te képleted 23:00.00-t számol a 12:00:00 helyett!

:-(

Előzmény: Fferi50 (24130)
Zoxo Whitney Creative Commons License 2014.02.11 0 0 24131

Ezt próbáld ki, habár kérdés, hogy milyen a könyvelőd! :-)

A feltétel eldönti, hogy az éjfél beleesik-e az intervallumba vagy sem

=HA(A1<=HA(B1=0;1;B1);  

       MAX(0,25;A1)-MIN(A1;25)  + MAX(HA(B1=0;1;B1);0,75)-MAX(A1;0,75);   '''éjfél nem esett bele az intervallumba

       1-MAX(A1;0,75) + MIN(B1;0,25))    '''éjfél beleesett

 

Piros: mennyi a ledolgozott idő reggel 6-ig, ha éjfélkor nem dolgoztál

Zöld:  mennyi a ledolgozott idő délután , ha éjfélkor nem dolgoztál

Lila:  mennyit dolgoztál éjfélig, ha délután kezdtél

Kék: mennyit dolgoztál éjfél után, ha este kezdtél.

Előzmény: Master of beginners (24128)
Fferi50 Creative Commons License 2014.02.11 0 0 24130

Szia!

 

Ha az eredményt a C oszlopba íratod, akkor a képlet:

C2   =B2-A2+HA(B2-A2<0;1;0)

C2 Formázás: számforma, egyéni: [ó]:pp:mm

 

Ezt húzd végig az eredmény oszlopon.

 

Üdv.

Előzmény: Master of beginners (24128)
tbando Creative Commons License 2014.02.11 0 0 24129

A C1-képletedet egészítsd ki ezzel a feltétellel: 

 

=ha(a1="";"";képlet többi része)

Előzmény: Master of beginners (24128)
Master of beginners Creative Commons License 2014.02.11 0 0 24128

Sziasztok!

 

 Van egy feladatom, amit nem megengedett makróval megoldanom, mert egy könyvvizsgálónak is értenie/látnia kell minden számítást a munkafüzetben. Tehát muszáj függvényt használnom, de azzal nem megy...

 

 -tól -ig időpontok alapján kell kiszámolnom a 18:00-06:00 közé eső órák darabszámát (fél órás pontossággal)

 

"A" oszlop        "B" oszlop     eredmény oszlop

02:00:00          09:00:00          4 óra

19:00:00          22:00:00          3 óra

22:00:00          09:00:00          8 óra

0:00:00            09:30:00          6 óra

06:30:00          19:00:00          1 óra

16:00:00          1:30:00            7,5 óra

08:00:00          16:00:00          0 óra

12:00:00          0:00:00            6 óra

5:30:00            18:30:00          1 óra

 

A nehézséget nem csak az okozza, hogy 2 nap is érintett lehet (éjfélt átlépve), hanem az is, hogy az éjfél matematikailag egyenértékű az üres cellával (0). És meg kell tudnom különböztetni az üres cellákat is a függvénnyel.

 

Makróval is bénácska módszert találtam ki (felírtam 2*24 órát egymás alá fél órás bontásban, majd megjelöltem az első 24-ben a kezdő és -szükség szerint a 2. 24-órás listában a végső időpontot). A releváns időpontokat léptékenként, fél órás darabolással összeadogatva írtam be az eredményt... Szóval nem voltam elragadtatva... De ezen a vonalon nem mehetek tovább az elején írtak miatt.

 

Köszönöm szépen a segítségeteket!

Üdv,

MoB

Törölt nick Creative Commons License 2014.02.11 0 0 24127

Hagyd, az enyémre sem válaszolt. Pedig félórája csak arra vár, hogy 20 sort beillesszen az Excel :)

Előzmény: Fferi50 (24125)
Fferi50 Creative Commons License 2014.02.11 0 0 24126

Ez tipikusan a sok képlet gond. Lehet, hogy van egy vagy több olyan képleted, aminek az eredménye "frissítés" (pl. ilyen az indirekt hivatkozás). Ez azt jelenti, hogy valahányszor egy cella értéke módosul, ez a képlet újraszámoltatja az egész munkalapot.

Ezért javasoltam az automatikus számolás kikapcsolását.

 

Üdv.

Előzmény: gondwana555 (24123)
Fferi50 Creative Commons License 2014.02.11 0 0 24125

Szia!

 

Azért válaszolhatnál  a kérdéseimre.

 

Plusz kérdés: Hány munkalap van a munkafüzetben és mekkorák a használt területek?

 

Megpróbáltad kikapcsolni az automatikus számolást?

 

Üdv.

Előzmény: gondwana555 (24124)
gondwana555 Creative Commons License 2014.02.11 0 0 24124

Azt hiszem feladom, a másolás sem működik, de csak ezen a munkalapon van gond. Felépítem egy új lapra az idei adatokat. Köszi, hogy foglalkoztál velem.

Szia,

gondwana

gondwana555 Creative Commons License 2014.02.11 0 0 24123

Bocs, nem voltam egyértelmű (éppen egy fél órája várok arra, hogy beszúrjon 20 sort a munkalapba), de tényleg munkafüzetről és munkalapokról van szó. Már a gördítés is gondot okoz. Újabban, ha be akarom zárni ilyenkor, a ""program nem válaszol" üzenetet adja. Ez a szánalmasan kevés feladat nem foghat ki egy excelen, mégha 2003-as is. Rápróbálok a javaslatodra, köszi, mindjárt jelzem, mi a helyzet.

gondwana

Törölt nick Creative Commons License 2014.02.11 0 0 24122

Megpróbálhatod azt, hogy beszúrsz egy új munkalapot, és arra átmásolod a lassú munkalap összes celláját mindenestül, aztán törlöd a régi munkalapot, az újat pedig átnevezed arra a névre, ahogy a régit hívták.

 

Ha ez nem segít, akkor mit értesz táblázat alatt? Értelmezési gondjaim vannak ezzel a mondattal:

"Excel táblázat, több munkalappal, a munkalapok a táblázattól kapnak adatokat, amikkel aztán tovább dolgoznak."

 

A korrekt elnevezések ezek lennének:

munkafüzet: az Excel fájl maga

munkalap: a munkafüzet lapjai, amiket Munka1, Munka2, stb. néven nevez a rendszer

táblázat: egy munkalap jól definiált, körülhatárolt része.

 

Az idézett mondat értelmében mondhatnánk, hogy táblázat = munkafüzet, és akkor egy munkafüzetről van szó több munkalappal. De máshol meg úgy hivatkozol a táblázatra, mintha az egy másik fájl lenne. Ha a "táblázat" tényleg másik fájl, akkor meg mit jelent a "Excel táblázat, több munkalappal" kifejezés?

Előzmény: gondwana555 (24120)
Fferi50 Creative Commons License 2014.02.11 0 0 24121

Szia!

 

Kérdések:

  • milyen excel verziót használsz (2003,2007,2010,2013?)
  • =szum('fájlneve'!T103)  egy cellát miért kell összegezni?
  • a fájlneve egy munkalapnév az adott munkafüzetben?

Valószínűleg túl sok a számolandó cella és ezért lassult be. Ilyenkor célszerű az automatikus újraszámolást átállítani csak kérésre. Az adatok bevitele után az F9 újraszámolja a cellákat. (Beállítások, számítási beállítások , munkafüzet újra számolása csak kérésre.)

 

Üdv.

Előzmény: gondwana555 (24120)
gondwana555 Creative Commons License 2014.02.11 0 0 24120

Üdvözlet mindenkinek!

Excel táblázat, több munkalappal, a munkalapok a táblázattól kapnak adatokat, amikkel aztán tovább dolgoznak. Az egyik munkalap olyan mértékig lelassult, hogy akadályozza a használatot, iszonyú lassan hagyja magát bővíteni, sorokat beilleszteni, másolni.  Egyetlen ilyen parancsa van:  =SZUM('fájlneve'!T103), a többi az erre, a táblázatból kapott adatra épülő feladatokat tartalmazza, némi formázással, háttérszín kiemeléssel. Ez a táblázatban kijelölt hely viszont kéthetente más cella.

A táblázat működése változatlan, gyorsan reagál, stb. Előre is köszönöm a segítséget!

gondwana

 

Soxem Creative Commons License 2014.02.11 0 0 24119

SIKERÜLT!!!

Nagyonszépen köszönöm!

Előzmény: Delila10 (24118)
Delila10 Creative Commons License 2014.02.11 0 0 24118

Jelöld ki az A2 cellát, és vigyél be feltételes formázást. Ennek a képlete: =HÉT.NAPJA(A2;2)=7.

A formátumot másold végig az oszlopodon.

Előzmény: Soxem (24117)
Soxem Creative Commons License 2014.02.11 0 0 24117

Sziasztok!

Csináltam egy excel lapot, kinyomtatva havi szintű naplózásra szolgál. az első kockába írt dátumot használva kiinduló adatként, az első oszlop adja a napi dátumot, ez az aktuális hónap napjain kívül a hét napját is mutatja. Próbálkoztam azzal hogy a vasárnap valahogy első pillantásra jól elkülönüljön a hét többi napjától, háttérszínnel, vagy bármi más feltűnő módon (hogy a heteket gyorsan tudjam egy rápillantással előre hátra számolni).

Ebbe tört bele a bicskám, a help sem segített, nehezen hinném, hogy nincs rá megoldás. Próbákoztam az OpenOfice-val is.

Az MS office 2010-et használom

tbando Creative Commons License 2014.02.09 0 0 24116

Szerintem talált, süllyedt. Ugyanis beírva egy makróba: a=1 mrd, és b=10 mrd, akkor az 'a' variant/long lesz a 'b' meg variant/double. Tehát ezek szerint valami okból célszerű figyelmeztetni a usert, hogy az adott adat csak double típusú  lehet. 

 

 

 

 

Előzmény: Fferi50 (24113)
lxt Creative Commons License 2014.02.09 0 0 24115

Mármint, univerzum/csillagrendszer.

Előzmény: lxt (24114)
lxt Creative Commons License 2014.02.09 0 0 24114

Off

 

A kvantummechanikai, csillagászati célprogramok, célgépeken futnak.

Mint ahogy nem ritkán, vannak azok a mezei számlázó programok, ahol egy számla (még) lehetséges sorszáma meghaladja a galaxisunk csillagrendszereinek számát: a csak feltételezetten 200 milliárd x 200 milliárdot - ami, véleményem szerint, több mint elég.:-)

 

A legtöbb feladat megoldására, talán egy 'dupla szó' is elég...

Előzmény: tbando (24110)
Fferi50 Creative Commons License 2014.02.09 0 0 24113

Szia!

 

Lehet, hogy ezt:

"Double data type

A data type that holds double-precision floating-point numbers as 64-bit numbers in the range -1.79769313486231E308 to -4.94065645841247E-324 for negative values; 4.94065645841247E-324 to 1.79769313486232E308 for positive values. The number sign (#) type-declaration character represents the Double in Visual Basic."

 

De ez csak egy tipp.

 

Üdv.

Előzmény: tbando (24112)
tbando Creative Commons License 2014.02.09 0 0 24112

Ezek szerint a # nem azt jelenti, hogy nem lája a teljes számot, mivel a 10 mrd nem is 2 hanem 4 számjeggyel kevesebb mint a lehetséges 15. Csináltam is rá egy próbát. Az a = 123456789012345 - 1123456789012344 a vbe-ben így néz ki:

 

a = 123456789012345# - 123456789012344#    

 

A kivonás eredménye a=1.  Tehát 15 számjegyig valóban pontosan látja a számokat.  De mit jelent a kettős kereszt?  

 

Előzmény: Fferi50 (24111)
Fferi50 Creative Commons License 2014.02.09 0 0 24111

Szia!

 

A 2010-es excel 15 számjegy pontosságú. Ez azt jelenti, hogy bármely nagyságú számból csak az első tizenöt számjegy pontos (tizedes törteknél a tizedesjegyet nem beszámítva), az összes utána következő számot 0-nak számítja, és úgy is számol vele.

 

Próbáld ki, hogy egy cellába beírod a számokat folyamatosan 1234567890123456789, a cella formátumát számra állítod. Látni fogod, hogy meddig vannak számok és hol kezdődik a nulla.

A nagyságrend megmarad, de az utolsó helyiértékeket nem tudja már figyelembe venni.

 

Üdv.

Előzmény: tbando (24110)
tbando Creative Commons License 2014.02.09 0 0 24110

Egy  0-t közelítő iterációs számításnál a vba az  1/1000 000 000  hányadost még elfogadja, de az 1/10 000 000 000 -hoz hozzábiggyeszt egy #-t. Ez mit jelent?  Azt hogy, hogy az általa észlelt legkisebb különbség 1/1 milliárd?  Ha igen, akkor hogy értendő az excel 14 számjegyes pontossága? Mivelhogy az 1/10milliárd annál 2 nagyságrenddel kisebb. 

Norbert Pintér Creative Commons License 2014.02.08 0 0 24109

Nagyon szépen köszönöm!

Előzmény: tbando (24108)
tbando Creative Commons License 2014.02.08 0 0 24108

B+.  Figyelmetlen voltam.  A 2 tábládat konvertáltam az 1-re. No akkor, amit kértél. Most az 1 táblázatod van a Munka2!E1:H1000 tartományban.  A Munka1-re meg ezeket a képleteket írd be egy 2x2 tartományba:

 

1 oszlop: 

 

=INDEX(Munka2!$E$1:$H$1000;(SOR($A1)+1)/2;1)

=INDEX(Munka2!$E$1:$H$1000;(SOR($A1)+1)/2;2)

 

2 oszlop:

 

=INDEX(Munka2!$E$1:$H$1000;(SOR($A1)+1)/2;3)

=INDEX(Munka2!$E$1:$H$1000;(SOR($A1)+1)/2;4)

 

Majd ezt a 2x2 tartományt kell lefelé másolnod. Ezt úgy kell, hogy kijelölöd a 2x2 cellát, majd kurzorral rámész jobb alsó sarokra, és amikor a nyil keresztre vált, húzod lefelé.

Előzmény: Norbert Pintér (24105)
tbando Creative Commons License 2014.02.08 0 0 24107

Ha mondjuk a Munka2!a7:b1000-n van az alaplistád, akkor a Munka1-re az alábbi képleteket írd be egymás mellé, majd húzhatod lefelé.

 

=INDEX(Munka2!$A$7:$B$1000;(SOR($A1)-1)*2+1;1)   a kékek nevei

=INDEX(Munka2!$A$7:$B$1000;(SOR($A1)-1)*2+2;1)   a pirosak nevei

 

=INDEX(Munka2!$A$7:$B$1000;(SOR($A1)-1)*2+1;2)  a kékek mennyisége

=INDEX(Munka2!$A$7:$B$1000;(SOR($A1)-1)*2+2;2)  a pirosak mennyisége

Előzmény: Norbert Pintér (24105)
Sánta Kutya (SK) Creative Commons License 2014.02.08 0 0 24106

Köszi, hétfőn kipróbálom. Szerencsére csak pár hétig használom ezt a gépet.

Előzmény: pimre (24102)
Norbert Pintér Creative Commons License 2014.02.08 0 0 24105

Normal 0 21 false false false HU X-NONE X-NONE MicrosoftInternetExplorer4

/* Style Definitions */ table.MsoNormalTable {mso-style-name:"Normál táblázat"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin-top:0cm; mso-para-margin-right:0cm; mso-para-margin-bottom:10.0pt; mso-para-margin-left:0cm; line-height:115%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;}

Üdv mindenkinek! Nem vagyok egy „excel-guru”, ezért is kérném a Ti segítségeteket.  A megrendeléseimet excel-be szoktam rögzíteni, és mos felmerült egy olyan probléma amire sehogy se tudok megoldást találni. A kérdésem:  az első ábrán szereplő adatokat hogyan tudom egy másik munkalapon a 2.ábrán lévő módon megjeleníteni? Előre is köszi.

Törölt nick Creative Commons License 2014.02.08 0 0 24104

Hol lehet kikapcsolni az önjavító opciót ugyanis előfordulnak olyan hibák amiket nem tudok megkeresni mert mert beindul ez a folyamat és hibát jelezve lelövi a filet. Az Office 2003-ban még ez nem volt de az Office 2007-től már létezik emiatt már jó pár programomnak búcsút kellett mondanom.

tbando Creative Commons License 2014.02.07 0 0 24103

Innentől nem értem a kérdést. Ha egy filet új néven vagy a régi néven új helyre mentesz, akkor onnantól, ha nem piszkálsz bele a mentés után, akkor nem kérdez rá, hogy mentse-e, mivel tudja hogy ez a változat már le van mentve.  Ha meg belepiszkálsz, akkor meg az új néven  illetve az új helyre menti vagy nem menti a választásod szerint. Ha bekapcsolod pimre True-ját, akkor nem fogja menteni. Nem vagyok benne biztos, hogy ezt nem fogod-e bánni.

Előzmény: Mittu21 (24090)
pimre Creative Commons License 2014.02.07 0 0 24102

Off: Elég idióta lehetett, aki ezt kitalálta, mikor a Dos alatt ott volt a CTRL + Alt + Del kombináció, ami most is megvan, csak beiktatódik a feladatkezelő a kilépéshez.

 

Nekem nincs ilyenem, de állítólag le lehet tiltani: http://www.gyakorikerdesek.hu/szamitastechnika__egyeb-kerdesek__318010-le-lehet-tiltani-a-billentyuzet-power-gombjat

 

Előzmény: Sánta Kutya (SK) (24092)
seven update sorbi Creative Commons License 2014.02.07 0 0 24101

Ez egy supervisori attitűd...:)

Előzmény: Sánta Kutya (SK) (24089)
seven update sorbi Creative Commons License 2014.02.07 0 0 24100

Sziasztok!

 

Azt szeretném megkérdezni, hogy az excelben az aktív cella vastag körvonalát el lehet-e valahogy tüntetni úgy, hogy közben az aktív cella aktív marad? (A beállítások között néztem, nem találtam, de lehet, hogy ott is be lehet ezt állítani. Ha makróval lehet, az is jó lenne.)

pimre Creative Commons License 2014.02.07 0 0 24099

De ehhez még tőlem is kell egy papír, hogy súlyos tévedésügyi szakértői szakvizsgával rendelkezem:-)

Előzmény: Sánta Kutya (SK) (24098)
Sánta Kutya (SK) Creative Commons License 2014.02.07 0 0 24098

Akkor ezek szerint súlyosan tévedtem, és ha kinyomtatom ezt az oldalt, már papírom is lesz róla! :-)

Előzmény: pimre (24097)
pimre Creative Commons License 2014.02.07 0 0 24097

Ne haragudj, de ez súlyos tévedés. Igen gyakori eset, hogy például egy fájlt nem írásra olvasol be, hanem bizonyos információk beolvasására. És a beolvasás előtt például rendezed az adatokat valamilyen szempont szerint. De ezért nem kívánod menteni, sőt esetleg még zavaró is, ha pusztán ezért frissülnek a mentési adatai. De millió és egy egyéb ok lehet, amikor a programban nem kívánod menteni a használt fájlt.

Előzmény: Sánta Kutya (SK) (24089)
Mittu21 Creative Commons License 2014.02.07 0 0 24096

Jajjjj de köszönöm!!!!

Előzmény: pimre (24094)
Mittu21 Creative Commons License 2014.02.07 0 0 24095

Na de ne szivass már :D Akkor megoldható? Ha igen, hogyan? Egy csomó tárhelyet megspórolna.

Előzmény: Sánta Kutya (SK) (24093)
pimre Creative Commons License 2014.02.07 0 0 24094

Van megoldás.  Pl.: Activeworkbook.Saved = True.

Előzmény: Mittu21 (24088)
Sánta Kutya (SK) Creative Commons License 2014.02.07 0 0 24093

Nem, ilyet nem állítottam, amint ez a hasonlatokból is látható. :-)

Előzmény: Mittu21 (24090)
Sánta Kutya (SK) Creative Commons License 2014.02.07 0 0 24092

Egyébként meg az a véleményem, hogy kínok közt fetrengve vesszen ki a világból, aki képes volt egy power gombot tenni a billentyűzetre oda, ahol tisztességes billentyűzeten a prtscr van, és egyetlen mellényúlással minden figyelmeztetés nélkül vész el az ember összes munkája.

Mittu21 Creative Commons License 2014.02.07 0 0 24091

Btw valahogy ihletet merítettem a hozzászólásodból és megoldottam, igaz nem valami elegáns. A megoldás az lett, hogy ha before_close-ba betettem, hogy ha hibás az anyagigénylő, akkor bezáráskor egy "Hibás" mappába menti a fájlt, amit néha "tisztítani" kell.

 

Köszi szépen :)

Előzmény: Mittu21 (24090)
Mittu21 Creative Commons License 2014.02.07 0 0 24090

Valóban, de a táblázat a mentést makróval végzi egy új fájl létrehozásával (másik helyre), így a mentésre szolgáló kérdés felesleges, vagy ha úgy tetszik redundáns (amúgy írásvédett a fájl, szóval csak felülírással tudná menteni a felhasználó).

 

Amúgy a hozzászólásodból úgy jön le, hogy nem kivitelezhető, de erősíts meg légy szíves, hogy jól értem-e?

Előzmény: Sánta Kutya (SK) (24089)
Sánta Kutya (SK) Creative Commons License 2014.02.07 0 0 24089

Ez kb. olyan kérdés, mint hogy le lehet-e tiltani az autóban a biztonsági övet vagy lehet-e csinálni biztosítószeg nélküli kézigránátot.

Előzmény: Mittu21 (24088)
Mittu21 Creative Commons License 2014.02.07 0 0 24088

Sziasztok!

Ki lehet valahogy kapcsolni makróval, hogy ha történt egy fájlon változtatás, bezáráskor ne kérdezzen rá, hogy akarja-e menteni a változásokat, hanem alapértelmezetten a Nem aktiválódjon?

Előre is köszi a választ :)

Üdv,
Ádám

tbando Creative Commons License 2014.02.06 0 0 24087

Kööösz!  Szinte biztos, hogy break módban volt  az épp takarásban levő másik modulon levő tesztelő makró.

Előzmény: Fferi50 (24086)
Fferi50 Creative Commons License 2014.02.06 0 0 24086

Szia!

 

Én még nem találkoztam ezzel a hibával, de a help ezeket írja:

" Can't perform requested operation (Error 17)

An operation can't be carried out if it would invalidate the current state of the project. This error has the following cause and solution:

  • The requested operation would invalidate the current state of the project. For example, the error occurs if you use the References dialog box to add a reference to a new project or object library while a program is in break mode.

    Stop execution of the current code, and then retry the operation.

  • An attempt was made to programmatically modify currently running code. For example, your code may have tried to read code from a disk file into a currently running module.

    Although you can modify modules in the project while they aren't actually running, you can't make modifications to a running module. To make such changes, you must stop the module from running, make the additions or changes, and then restart execution."

Hátha ebből kiderül, mi lehetett nálad.

 

Üdv.

Előzmény: tbando (24085)
tbando Creative Commons License 2014.02.06 0 0 24085

Kösz. A segítségeddel nagyjából kisakkoztam, hogy a különbőző esetekben hogyan reagál az excel.  Csak egyre nem jöttem  még rá: Hogy a korábbi F4-es modulátnevezéseimet miért nem tudta megcsinálni: Can't perform requested operation -üzente helyette. Van valami tapasztalatod, hogy ezt mikor szokja üzenni. 

Előzmény: Fferi50 (24084)
Fferi50 Creative Commons License 2014.02.06 0 0 24084

Szia!

 

Még valami:

F4-el (vagy a View menüből Properties Window) láthatod az adott modul tulajdonságait tartalmazó ablakot. Itt is megváltoztathatod a modul nevét.

 

Üdv.

Előzmény: tbando (24082)
Fferi50 Creative Commons License 2014.02.06 0 0 24083

Szia!

 

A modulok nevét az alábbi módon tudod megváltoztatni:

activeworkbook.VBProject.VBComponents("Module1").Name="Modul1"

 

Az egyes modulok változóit akkor tudod másik modulból elérni, ha Public-nak declaráltad, és akkor a modulnev.valtozónév alakban benne vannak a listákban is.

Az eljárások publikusak, ha nem privátnak hozod létre azokat és a modul.eljárás módon hívhatóak. Ha csak egy van az eljárásból, akkor ki tudja választani a VBA és nem kell a modulnév. Ha viszont több modulban is van ugyanazon nevű eljárás, akkor feltétlenül kell a  modulnév is.

Próbáld ki, ha egy eljárást Private kezdőszóval hozol létre, akkor a modulon kívülről nem lehet meghívni, nem látod a projekt listákban a modulon kívül.

 

Egyébként mindig először az általános modulban keresi a program, ha nem írtad be a modul nevét.

 

Üdv.

 

Előzmény: tbando (24082)
tbando Creative Commons License 2014.02.06 0 0 24082

Hogyan kell az egyik modulban-ben írt eljárásban egy másik modul  modulváltozójának értéket adni, vagy lekérdezni, anélkül hogy a kérdéses változót projectszintűvé tenném?

 

A Kovalcsik könyv erröl ezt írja: Ha pl. a Dolgozo modulnak van egy Fizetes nevű változója, akkor az így érhető el:  Dolgozo.Fizetes

 

Na most ezzel két problémám van: 1. A property ablakban nem engedi átnevezni a modult. 2. A  module1-ben a module2.fizetes hivatkozas se müxik.

 

****

 

A Kovalcsik könyv azt is írja, hogy a külső modulok eljárásait is hasonlóan kell meghívni. Ezt csak nem értem. Mert nálam az osztálymoduloktól eltekintve bármelyik modulból bármelyik modul eljárása hívható. Akkor  minek komplikálni?

 

Delila10 Creative Commons License 2014.02.06 0 0 24081

Ha találnál olyan oldalt, ahonnan percre le tudnád tölteni a különböző pénznemek árfolyamát, a páros összeállítása már nem lenne gond.

Előzmény: Excel Foley (24080)
Excel Foley Creative Commons License 2014.02.06 0 0 24080

Kedves Delila10!

 

Egyrészt köszönöm a gyors választ és az igyekezeted, másrészt elnézést, hogy nem konkretizáltam jobban a problémát az előző hozzászólásomban, mert adott devizapárok meghatározott percre vonatkozó árfolyamadata kellene, tehát pl. 2014.01.08. 14:43 EUR/USD.

Előzmény: Delila10 (24079)
Delila10 Creative Commons License 2014.02.06 0 0 24079

http://www.mnb.hu/arfolyam-lekerdezes címen az Aktuális deviza árfolyamok teljes letölthető verziója menüpontban xls formátumban letöltheted 1949.01.03-tól a mai napig a különféle pénznemek árfolyamát, de csakis dátum szerint.

 

Mikor ez megvan, egy INDEX függvénybe ágyazott HOL.VAN függvénnyel kikeresheted azt, amire szükséged van.

Előzmény: Excel Foley (24078)
Excel Foley Creative Commons License 2014.02.06 0 0 24078

Sziasztok!

 

Excel 2010-ben már dolgozgatok egy ideje egy forex-es naplón, de a minap olyan problémába akadtam, amire nem sikerült megoldást találnom. Minden egyéb gondomat sikerült orvosolnom különböző makrókkal és angol fórumok olvasgatásával, de ez az egy megoldásra váró feladat kifogni látszik rajtam, szóval gondoltam leírom itt, hátha esetleg valaki tud rá megoldást, nagyon sokat segítene vele, mert már csak ez hiányzik, hogy elkészülhessek az egésszel.

 

Szóval problémám a következő: Egy általam kiválasztott múltbeli időponthoz tartozó devizaárfolyamot szeretnék kiíratni excelben. Tehát konkrétan egy cellába beírnám a dátumot és az időpontot percre pontosan, majd egy másik cellába a devizapárt, a 3. cellába pedig kiíratnám az ahhoz a perchez tartozó devizaárfolyamot. MetaTrader4-ből lenne a legcélszerűbb kivarázsolni ezeket az adatokat, de csak olyan képleteket találtam, amik az éppen aktuális árfolyamadatokat jelenítik meg (=MT4|BID! =MT4|ASK! =MT4|HIGH! =MT4|LOW! =MT4|TIME! =MT4|QUOTE!), múltbéli adatokra vonatkozóakat azonban nem. Alternatív megoldásként arra is gondoltam, hogy talán az internetről is lebányásztathatnám az árfolyamadatot, de egyrészt nem találtam olyan internetes forrást, ahonnan múltbeli adatok elérhetőek lennének, másrészt az internetes adatforrásból történő adatimportálás mikéntjét sem ismerem.:(

 

Ha valakinek van ötlete, tényleg nagyon sokat segítene vele! Előre is nagyon szépen köszönöm a válaszokat!

Fferi50 Creative Commons License 2014.02.05 0 0 24077

Szia!

 

Nyilván nem az egymás melletti cellákat kell Ctrl-el "egybeterelni", de sokszor előfordulhat, hogy nem összefűggő tartományokat kell együtt kezelni.

Ezért érdekes vizsgálni a viselkedésüket.

 

Üdv.

Előzmény: tbando (24076)
tbando Creative Commons License 2014.02.05 0 0 24076

Hát....?

 

De azért kösz! Hanyagolni fogom ezeket változatokat. 

Előzmény: Fferi50 (24074)
Fferi50 Creative Commons License 2014.02.05 0 0 24075

Szia!

 

Igazán szívesen "segítettem", örülök, hogy találtál megfelelő progit.

Szerintem még egy kicsit kutakodsz és lesz pénzügyi - sőt könyvelő - program is. Lehet érdemes lenne még a "nagyoknál" (SAP, MS) is kicsit körülnézni, elég sok dolgot ajánlanak kkv-k számára is.

Lehet, kevesebb idő alatt megtalálod, mint amennyi ideig az Excelt nyúzni kellene, hogy valahogy kinézzen.

 

További jó munkát (mókát)!

 

 

Előzmény: akhvel (24073)
Fferi50 Creative Commons License 2014.02.05 0 0 24074

Szia!

 

Első kérdésre:

Már előrehaladott állapotban vagyok egy "tanulmányban", ami meg kísérli megmagyarázni az ilyen nevek, tartományok működését.

Egyelőre annyit, hogy ilyenkor a területeket is figyelni kell. Tehát esetedben az alma névvel meghatározott tartomány 4 területből áll és az egyes területek 1 - 1 cellát tartalmaznak. Tehát range("Alma").areas(1)(1).address=A1 stb.

Az egy dimenziós hivatkozás pl. range("Alma")(4).address az első területen megy végig lefelé. Az alma(2) csak azért adott jó eredményt, mert az A2 is benne volt a tartományban.

 

Második kérdésre:

Ha kitörölöd a dollár jelet - ami ugye az abszolut hivatkozást, azaz a mozdíthatatlanságot jelenti - akkor a név "mozgathatóvá" válik. Tehát az eredeti helyéhez képest az adott hely koordinátáinak megfelelően "elmozdul" a hivatkozás. Szebben látszik, ha mondjuk az I10-et nevezed el, majd utána pl. a L4 cellába írod be az =nevet.

 

Üdv.

 

 

Előzmény: tbando (24072)
akhvel Creative Commons License 2014.02.05 0 0 24073

Köszönöm,

 

megfogadtam a tanácsod, 25 ezerért mindent tudó standoló és készletkezelő programot lehet venni, konyhai hányadokat is számol, lekérdezéseket lehet vele csinálni xls-be, egyszóval tökéletes. 25 órát biztos elmarháskodtam volna egy excel táblával én is, és nem lett volna ilyen jó, mint ez.

 

Már csak egy ilyen pénzügyi program lenne a tuti, amivel tudnám kezelni egyszerre több üzlet bevételeit és kiadásait és persze a sajátomat is. De ilyet még nem találtam, ezért jobb híján excelek :)

Előzmény: Fferi50 (24016)
tbando Creative Commons License 2014.02.05 0 0 24072

Hát az idáig az eszembe sem jutott, hogy összefüggő területet ctrl-lal foglaljak tartományba. De ha már  felhívtad rá a figyelmem, csináltam rá egy próbát.  Alma névvel ctrl-lel deklaráltam az a1, b1, d1 és a2 cellákat. Majd sorban kiírattam a tartalmukat, hogy lássam hogy számozódnak a cellák. De csak az a1 a2-t volt hajlandó kíirni.  Hogy lehet rábírni, hogy a többit ís kiírja?

 

for i=1 to 4

debug.print Range("alma")(i)

Next i

 

A névhasználattal kapcsolatban lenne egy másik kérdésem is. Definiálom az b1-t mint alma-t. Majd a névkezelőben átírom a $b$1 hivatkozást b1-re.  Majd bármelyik cellából =alma-ra hivatkozva körkörös hivatkozás hibaüzenetet ad, és a névkezelő mutatja is, hogy most már a hivatkozó cella az alma.  Itt ez  hogy s mint?

 

Előzmény: Fferi50 (24070)
tbando Creative Commons License 2014.02.05 0 0 24071

Nagyon frappáns :)))).

Előzmény: Törölt nick (24065)
Fferi50 Creative Commons License 2014.02.05 0 0 24070

Szia!

 

Még egy kis adalék az előző hsz-ekhez:

 

Ha a név nem egy területből álló tartományra hivatkozik (Pl.A1;B2), akkor már pontokat tesz ki. (Akkor is, ha a két cella közvetlenül egymás alatt v. mellett van!!!! Ha Ctrl-t nyomva jelölted ki a két egymás melletti v. alatti cellát, akkor már nem számít összefüggőnek!)

 

Üdv.

Előzmény: tbando (24059)
gab_oca Creative Commons License 2014.02.05 0 0 24069

Fferi50!

 

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

Előzmény: Fferi50 (24062)
Fferi50 Creative Commons License 2014.02.05 0 0 24068

Szia!

 

Kicsit komolyabban: valószínű, hogy az eltolás kiszámítása "meghaladja a képességeit", ezért inkább a pontokkal jelzi, hogy vannak ám ott értékek, csak nem tudom megmutatni.

 

Üdv.

Előzmény: Sánta Kutya (SK) (24066)
Fferi50 Creative Commons License 2014.02.05 0 0 24067

Szia!

 

"Egyszerűen fogok egy sima oszlopot, aminek a szélességét beállítom akkorára, mint a 3 összevont cella együtt, abba beleteszem a szöveget, és leolvasom a sormagasságot."

 

Hogy ez nekem miért nem jutott eszembe.... Persze, feltételeztem, hogy a 3 cellád egyforma szélességű.

 

Íme, itt jön ki a "kollektív bölcsesség" eredménye.

 

Üdv.

Előzmény: Törölt nick (24065)
Sánta Kutya (SK) Creative Commons License 2014.02.05 0 0 24066

Csak ez a kolléga nem nálunk topikol.

Előzmény: Fferi50 (24064)
Törölt nick Creative Commons License 2014.02.05 0 0 24065

Neked is köszönöm a választ.

Szerintem ez sem tökéletes, de már közel van. Itt is az a gondom, hogy egy cella nem azonos a három cella egyharmadával, ha érted, mire gondolok. Egyrészt az egyedi cellák nem egyforma szélesek, és esetemben egyikről sem mondható el, hogy szélessége az egyesített szélesség egyharmada lenne. Másrészt létezik olyan szöveg, ami az összevont 3 cella egyetlen sorában elfér, de mégis, a szavak hossza és elrendezése pont olyan, hogy egy cellában elhelyezve 5 sorra tördeli.

 

Én úgy oldottam meg, hogy létrehoztam egy userformot, azon egy labelt. A label tulajdonságait így állítottam be:

szélességét = az összevont cellák szélessége,

betűtípus = az összevont cellákbetűtípusa

autosize=true.

 

Programban megmódosítottam a label.caption értéket a mérendő szövegre, kiolvastam a label magasságát, és szoroztam 15/12.75 értékkel, ami úgy tűnik, egy konstans (a munkalapon a cella belső margói miatt ennyivel nagyobb a sormagasság). Ez a módszer az összes (kb. 300 db) tesztelt szövegre jól működött. Viszont azt nem tudom, hogy az említett konstans szorzó más karakterméret vagy más betűtípus esetén is ugyanaz-e, szóval itt van egy bizonytalanság.

 

De az ötleted rávezetett egy olyan megoldásra, amiben pillanatnyilag nem találok hibát.

Egyszerűen fogok egy sima oszlopot, aminek a szélességét beállítom akkorára, mint a 3 összevont cella együtt, abba beleteszem a szöveget, és leolvasom a sormagasságot.

Előzmény: Fferi50 (24043)
Fferi50 Creative Commons License 2014.02.05 0 0 24064

Szerintem Redmond tudja a választ :-)

 

Üdv.

Előzmény: tbando (24059)
Törölt nick Creative Commons License 2014.02.05 0 0 24063

Köszönöm a választ.

Csak két problémám van vele. Az egyik, hogy a megoldás feltételezi a Courier használatát, mert abban a karakterek szélessége azonos. De mi van, ha nekem az nem jó? A másik, hogy a szavak hosszától függően a tördelt szöveg egy-egy sorában nem azonos a karakterek száma, sőt, elég nagy eltérés lehet közöttük.

Előzmény: tbando (24060)
Fferi50 Creative Commons License 2014.02.05 0 0 24062

Gab_oca!

 

Makró nélkül is meg lehet csinálni, a hivatkozásokat egy eldugott menüpont előcsalogatásával át lehet változtatni:

2010-ben:

 

Fájl - beállítások - menüszalag testreszabása  

A választható parancsok helyénél megkeresed a Fájl lapot, ezen pedig a Fájlhivatkozások szerkesztése pontot.

Utána a jobb oldalon (menüszalag testreszabása) kiválasztod a kezdőlapot, majd új csoport hozzáadása (egyéni), ide

felveszed ezt a parancsot és OK

 

Ezután a kezdőlapon (valószínűleg a végén) megjelenik a Fájlhivatkozások szerkesztése. Ezt felhasználva módosíthatod az értékelő lapok hivatkozásait a kívánt mappára.

 

Ha mégis a makró mellett döntesz, akkor egy kiegészítés:

 

Az előző makróban van egy "kis" hiba. Ezzel kellene kicserélni:

 

Private Sub Workbook_Open()
Dim alink(), mappa As String, ertekelo() As String, link As Variant
ertekelo = Split("Értékelő1.xls,Értékelő2.xls,Értékelő3.xls,Értékelő4.xls", ",")
mappa = Replace(ActiveWorkbook.FullName, ActiveWorkbook.Name, "")
alink = ActiveWorkbook.LinkSources(Type:=xlLinkTypeExcelLinks)
For Each link In alink
    For xx = 0 To UBound(ertekelo)
        If InStr(link, ertekelo(xx)) > 0 Then
            ActiveWorkbook.ChangeLink link, mappa & ertekelo(xx), Type:=xlLinkTypeExcelLinks
        End If
    Next
Next
End Sub

 

(és az értékelő lapokat kiterjesztéssel együtt kell beírni!)

 

Üdv.

Előzmény: Fferi50 (24057)
tbando Creative Commons License 2014.02.05 0 0 24061

B+ :(((

 

Az első sormagasság=füzetsormagasság, a második meg szövegsormagasság 

Előzmény: tbando (24060)
tbando Creative Commons License 2014.02.05 0 0 24060

Az is lehet egy megoldás, hogy a 3 összevont cellába írandó szöveg betűtípusát átváltod curier-re, a sablonon megszámolod hány karakter egy sor, majd a sormagasság =(integer(hossz(szöveg)/(karakter/sor))+1)*sormagasság.

Előzmény: Törölt nick (24042)

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!