Keresés

Részletes keresés

Eredő Vektor Creative Commons License 2014.09.30 0 0 25942

akkor vmit nem jóé csinálsz mégsem, mert 2010-ben kipróbáltam, Isten 'biz működik.

Előzmény: r.tonyo4 (25940)
r.tonyo4 Creative Commons License 2014.09.29 0 0 25941

Libreoffice-val sikerült:

 

Előzmény: Eredő Vektor (25939)
r.tonyo4 Creative Commons License 2014.09.29 0 0 25940

adott pont kijelölve, jobbegérgomb - adatfelirat felvétele - adatfelirat formázása - felirat beállítása - felirat tartalma - itt adatsor neve bepipálva, az eredmény a következő:

 

 

a teljes adatsor odarakja, pedig én csak az egy ponthoz tartozót szeretném

Előzmény: Eredő Vektor (25939)
Eredő Vektor Creative Commons License 2014.09.29 0 0 25939

pedig megy az egyesével is, csak jól kell kattintgatni. (Az első kattintás az összes adatfeliratot kijelöli, a második csak egyedileg)

Előzmény: r.tonyo4 (25938)
r.tonyo4 Creative Commons License 2014.09.29 0 0 25938

igen, de ebben az esetben az adatsor nevénél a teljes kijelölt adattartományt megjeleníti minden egyes pontnál.

Előzmény: Eredő Vektor (25937)
Eredő Vektor Creative Commons License 2014.09.29 0 0 25937

jobb gomb a ponton, adatfelirat felvétele, majd duplaklikk az adatfeliraton és ott lehet választani, h mi jelenjen meg. (Adatsor neve, kategória, stb...)

mondjuk ez 2010, de hasonlóan lehet 2007-ben is

Előzmény: r.tonyo4 (25926)
r.tonyo4 Creative Commons License 2014.09.29 0 0 25936

azóta is próbálkozom, de semmi.

Libreoffice-ban annyit meg lehet csinálni, hogy az értékek elé bepakolja a nevet, de az így módosított fájlt excelben megnyitva kiírja a program, hogy a tartalom elveszett.

Előzmény: r.tonyo4 (25926)
Fferi50 Creative Commons License 2014.09.25 0 0 25935

Szia!

 

Távolbalátással sajnos nem fog menni, csak próbálkozni tudok:

 

Tuti, hogy a rendezési csak a dátumot tartalmazó oszlopokra van beállítva? Mert az a gyanúm, hogy másik oszlopra is van érvényes szabály. Megnézheted az Adatok - rendezés menüpontban, ha nem az "A-Z","Z-A" lehetőségre, hanem a Rendezés-re kattintasz. Itt megláthatod, hány oszlopra van beállítva szabály.

 

Üdv.

 

Ha ez sem segít, akkor tegyél fel egy mintát valahova és megnézem(zük).

 

Előzmény: djmorphy (25934)
djmorphy Creative Commons License 2014.09.25 0 0 25934

Köszi szépen!

 

Elkezdte rendezni de szakaszosan. Azaz van mondjuk 50 rekord ami időrendben van. Utána az 51-től megint elkezdi januártól ami szintén időrendi.

 

Valahogy így:

A1 01.01

A2 01.02

A3 01.03

A4 01.01

A5 01.02

A6 01.03

 

 

Mindegyik típusa dátum, nincs szóköz és egyéb karakter benne.

Ez mitől lehet?

Előzmény: Fferi50 (25933)
Fferi50 Creative Commons License 2014.09.25 0 0 25933

Szia!

 

Kézzel: Kijelölöd azt a tartományt amelyet rendezni szeretnél. Utána adatok, rendezés. De ha belekattintasz a tartományba és utána az adatok- rendezés menüpontba, magától ajánlja fel a teljes tartományt.

Makróval  általában a tartományban levő egyik cella CurrentRegion tulajdonsága segít:  pl.  B3.currentregion.sort

 

Egyre kell figyelni: a tartományt egybefüggően kell kijelölni - tehát ha közben lennének üres oszlopok, azokat is folytatólagosan bele kell foglalni.

Ezért a fenti makrós dolog csak akkor jó, ha nincs üres sor/oszlop az adatok között (mert a CurrentRegion az a "téglalap" alakú tartomány, amelyet minden oldalról legalább egy üres oszlop és sor határol.

 

Üdv.

Előzmény: djmorphy (25932)
djmorphy Creative Commons License 2014.09.25 0 0 25932

Köszi!

 

És azt ki lehet valahogy bővíteni, hogy meddig tartson a rendezendő tartomány?

Előzmény: Fferi50 (25928)
hellsing Creative Commons License 2014.09.24 0 0 25931

Bakker, ez ennyire 1×ű..?

 

Köszönöm! :-))

Előzmény: Fferi50 (25930)
Fferi50 Creative Commons License 2014.09.24 0 0 25930

Szia!

 

Csinálj egy segédoszlopot a számok elé v. mögé. Pl. segédoszlop A, számok B, sz A1 cella képlete legyen  ="A" & B1 és ezt húzd végig a segédoszlopon

Ezután jelöld ki a segédoszlopot és a rendezendő oszlopot (illetve, ha van utána még több oszlop, akkor az egész tartományt, hogy menjenek az adatok a főkönyvi számokkal). Rendezz a segédoszlop szerint.

 

Utána a segédoszlopot törlöd, vagy ha később is szükséged lenne rá, akkor elrejted.

 

Üdv.

Előzmény: hellsing (25929)
hellsing Creative Commons License 2014.09.24 0 0 25929

'estét!

 

Huszonéves Excel múlttal olyan problémába futottam, mint még eddig nem. Lehet az Excelben számokat szövegként sorba rendezni? Főkönyvi számlaszámokról van szó, ahol ez egy helyes sorrend:

 

5

55

551

56

561

 

Ez viszont nem:

 

5

55

56

551

561

 

Szóval... lehet? Próbáltam a számok oszlopát Format cells -> Category -> Text-ként használni, de csak érték szerint rendezne. Az Excel súgó és egy gyors Guglizás nem segített.

Fferi50 Creative Commons License 2014.09.24 0 0 25928

Szia!

 

Talán nincs benne az oszlop a rendezendő tartományban.

 

Üdv.

Előzmény: djmorphy (25925)
r.tonyo4 Creative Commons License 2014.09.24 0 0 25927

az lemearadt, hogy excel 2007ben dolgozom

Előzmény: r.tonyo4 (25926)
r.tonyo4 Creative Commons License 2014.09.24 0 0 25926

Sziasztok

Értékek közötti összefüggések vizsgálatához használt értékpár pontdiagramhoz hogyan lehet olyan adatfeliratot rendelni, ahol a pontok nevei (pl megyék, városok stb) szereplnek?

Köszönöm

 

djmorphy Creative Commons License 2014.09.24 0 0 25925

Sziasztok!

 

Az Office 2013-ban van a  "Házi leltár" sample. Ezt egészítettem ki több oszloppal, hogy tudjam használni.
Az AF oszlopban dátumok vannak. A problémám az, hogy nem rendezi növekvő sorrendbe. Csökkenőbe sme. Szerintetek ez miért lehet? Semmi hibát nem dob és mikor a rendezésre megyek látszólag nem is történik semmi.

enyan Creative Commons License 2014.09.24 0 0 25924

Nem akarom elkiabálni, de lehet, hogy megoldódott a probléma. Annyit változtattam a kódon, hogy minden másolásos sor elejére beírtam a második sorból átvett "If Range("h2").Value <> Range("h1").Value Then" utasítást vagy mit. Természetesen a cellákat átírtam a másolandó cellákéra. Így a makró futásának feltételét nem változtattam meg, de csak abban az esetben végzi el ténylegesen a másolást, ha a másolandó cellák értékei nem egyeznek. Olyan bonyolult makrót nem akarok használni, amit nem értek, ezért ciklusok meg hasonlók kilőve. Mindenesetre köszönöm a segítségeteket, remélem több makrós problémám nem lesz. Ha mégis, akkor jövök úgyis ahogy szoktam.

 

Üdv mindenkinek!

enyan Creative Commons License 2014.09.23 0 0 25923

Bocsánat, ha nem volt egyértelmű, ami könnyen előfordulhat. A második sor azért került be a makróba, hogy lényegében ezzel a kapcsolóval tudjam meghatározni a makró teljes lefutását (ne fusson le minden újraszámításnál). Eleinte jó is volt, de mostanra olyan sok tényező változtatja már meg a cella értékét, hogy lényegében mindig lefut a makró. Abban sem vagyok biztos, hogy a makró másolásai nem generálnak-e újabb változásokat a kérdéses cellában, ezzel újra futtatva a makrót. mindenesetre végtelen ciklusba nem futottam bele, mert idővel megáll és minden jól történik, csak lassan. Nem biztos, hogy a sok másolás miatt lassú, lehet, hogy nagyon sokszor fut le. Ezt nem tudom hogyan tudnám kideríteni.

 

A segítségeteket köszönöm, holnap lesz már csak időm értelmezni és tesztelni.

Delila10 Creative Commons License 2014.09.23 0 0 25922

Valószínűleg a 2. sorban változtatod az értéket, ez nem derült ki a leírásodból. Ha igaz, érdemesebb a Change eseményhez kötni a futást.

A sok sor összehasonlítását ciklusban is elvégezheted, nem kell 50× beírni.

 

A makró akkor változtat, ha a 2. sorba viszel be adatot, billentyűzetről. Ekkor megnézi, hogy a bevitt adat egyezik-e a fölötte lévő adattal. Ha nem, akkor a bevitel oszlopában a 3. sortól kezdve minden második sorba beviszi a jobbra mellette lévő értéket.

Nem biztos, hogy ez a feladat, csak próbálkozom a gondolatolvasással. :)

 

 

Private Sub Worksheet_Change(ByVal Target As Range)
   Dim sor As Long

   If Target.Row = 2 Then
      If Target <> Cells(1, Target.Column) Then
         Application.EnableEvents = False
         For sor = 3 To 100 Step 2
            Cells(sor, Target.Column) = Cells(sor, Target.Column + 1)
         Next
         Application.EnableEvents = True
      End If
   End If
End Sub

Előzmény: enyan (25920)
marek.z Creative Commons License 2014.09.23 0 0 25921

Csak tippelek.

 

Ez a kód azért fut le minden újraszámolásnál, mert a Worksheet_Calculate() eseményhez van kötve. Szerintem más feltétellel kellene indítani a cellák értékadását.

 

 

 

Application.EnableEvents = False

 

Ez a sor azért van benne, hogy az utána lévő kódsorok (cella értékadás) ne váltsák ki a Worksheet_Calculate() eseményt ezáltal végtelen ciklust okozva. Természetesen miután lefutott a kód vissza kel kapcsolni az események figyelését, erre való a

 

 Application.EnableEvents = True

 

Előzmény: enyan (25920)
enyan Creative Commons License 2014.09.23 0 0 25920

Sziasztok!

Lenne egy makróm, ami így néz ki:

 

Private Sub Worksheet_Calculate()
If Range("h2").Value <> Range("h1").Value Then
   Application.EnableEvents = False
   Range("h3").Value = Range("i3").Value
   Range("h5").Value = Range("i5").Value
   Range("h7").Value = Range("i7").Value
   Range("h9").Value = Range("i9").Value

itt még kb 50 ilyen sor következik, de csak a makró végét másolom ide:

  Application.EnableEvents = True
End If
End Sub

 

A probléma az, hogy a lefutás feltételét (második sor) annyi mindenhez kötöttem, hogy lényegében az oldal minden számításánál lefut. Engem ez nem is zavarna, de sajnos használhatatlanul belassult tőle az érintett oldal. Nem fagy le és nem ír hibát, csak várni kell 4-10 másodpercet. Nincs ötletetek, hogy hogyan lehetne egy kicsit gyorsítani? Én arra gondoltam, hogy nem gyorsulna-e attól, ha a másolásokat minden sor elején a másolt és a másolandó cella összehasonlításával kezdeném és csak azokat a cellákat kellene átmásolni, amik nem egyeznek. Azt mondjuk nem tudom, hogy az összehasonlítás gyorsabb-e a másolásnál. De persze bármilyen más hasznos ötletre vevő vagyok.

 

Jahh és még valami. Ezek a sorok mit csinálnak?

Application.EnableEvents = False

Application.EnableEvents = True

End If

 

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

KelemenGy Creative Commons License 2014.09.18 0 0 25919

Tárgytalan a kérdés, sikerült megoldanom.

KelemenGy Creative Commons License 2014.09.18 0 0 25918

Ennyit haladtam előre a dologgal:

 

Sub osszefuz_saveas()

Dim i As Integer
For i = 2 To 30

Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Sheets("megbizasi").Select
Cells(i, 3).Select
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_09").Select
Range("$D$10").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Sheets("megbizasi").Select
Cells(i, 18).Select
Application.CutCopyMode = False
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_09").Select
Range("$D$11").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Sheets("megbizasi").Select
Cells(i, 17).Select
Application.CutCopyMode = False
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_09").Select
Range("$D$12").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Cells(i, 3).Select
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_10").Select
Range("$D$10").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Cells(i, 18).Select
Application.CutCopyMode = False
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_10").Select
Range("$D$11").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Cells(i, 17).Select
Application.CutCopyMode = False
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_10").Select
Range("$D$12").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Cells(i, 3).Select
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_11").Select
Range("$D$10").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Cells(i, 18).Select
Application.CutCopyMode = False
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_11").Select
Range("$D$11").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Cells(i, 17).Select
Application.CutCopyMode = False
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_11").Select
Range("$D$12").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Cells(i, 3).Select
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_12").Select
Range("$D$10").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Cells(i, 18).Select
Application.CutCopyMode = False
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_12").Select
Range("$D$11").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Cells(i, 17).Select
Application.CutCopyMode = False
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_12").Select
Range("$D$12").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_09").Select
Range("D10").Select
Application.CutCopyMode = False
ActiveWorkbook.SaveAs Filename:="D:" & Range("D10") & ".xls", _
FileFormat:=xlExcel8, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
Next i

End Sub

 

Ebben a ciklus már működik, az első fájlt le is menti, de utána a második összeillesztése előtt megáll, hogy nem találja a munkaidő-nyilvántartás fájlt.

KelemenGy Creative Commons License 2014.09.18 0 0 25917

Sziasztok!

 

Kérnék némi segítséget!

 

Kellene kreálnom vagy 30 egyedi munkaidő-nyilvántartó excel táblát, amiben szerepelnek a delikvensek nevei, a feladatuk meghatározása és a munkahelyük neve.

Ehhez van adatbázisom, az alábbi makróban adattabla_*.xlsx néven, van munkaidő nyilvántartó excelem munkaidonyilvantartas_*.xls néven. Utóbbiban van négy munkalap, havi bontásban lehet vezetni a munkaidőt.

Azt kellene megoldanom, hogy egyenként beillessze az adattáblában szereplő 29 ember nevét, munkahelyét, feladatát (adattabla_*.xlsx C,R és Q oszlop 2-30. sor) a megfelelő helyekre az nyilvántartásba (munkaidonyilvantartas_*.xls, D10, D11 és D12 cellák, 2014_09, 2014_10,2014_11 és 2014_12 munkalapok).

 

Makrórögzítéssel eddig jutottam:

 

Sub osszefuz_saveas()

Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Range("C2").Select
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_09").Select
Range("$D$10").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Range("R2").Select
Application.CutCopyMode = False
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_09").Select
Range("$D$11").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Range("Q2").Select
Application.CutCopyMode = False
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_09").Select
Range("$D$12").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Range("C2").Select
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_10").Select
Range("$D$10").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Range("R2").Select
Application.CutCopyMode = False
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_10").Select
Range("$D$11").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Range("Q2").Select
Application.CutCopyMode = False
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_10").Select
Range("$D$12").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Range("C2").Select
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_11").Select
Range("$D$10").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Range("R2").Select
Application.CutCopyMode = False
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_11").Select
Range("$D$11").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Range("Q2").Select
Application.CutCopyMode = False
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_11").Select
Range("$D$12").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Range("C2").Select
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_12").Select
Range("$D$10").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Range("R2").Select
Application.CutCopyMode = False
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_12").Select
Range("$D$11").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Windows("adattabla_munkaido_nyt-hoz.xlsx").Activate
Range("Q2").Select
Application.CutCopyMode = False
Selection.Copy
Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_12").Select
Range("$D$12").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Windows("munkaidonyilvantartas_2014_08-12_ho.xls").Activate
Sheets("2014_09").Select
Range("D10").Select
Application.CutCopyMode = False
ActiveWorkbook.SaveAs Filename:="D:" & Range("D10") & ".xls", _
FileFormat:=xlExcel8, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False

End Sub

 

Ez így egy sorból kiszedi és bemásolja + lementi az adatokat úgy, ahogy szeretném, de nem tudom, hogy a ciklusnak hogyan álljak neki, hogy a többi sort is ugyanígy megcsinálja. 

a nagy zselatini Creative Commons License 2014.09.16 0 0 25916

Nagyon szépen köszönöm a segítséget, ennél rövidebben tényleg nem lehetett volna megvalósítani, és úgy tűnik tökéletesen szuperál! :-)

Előzmény: Fferi50 (25914)
Redlac Creative Commons License 2014.09.16 0 0 25915

Köszi az If javítást, módosítottam.

 

Pont annyi lenne a lényeg, hogyha már egy másik felhasználó nyitja meg (nem a sablont, hanem a már kitöltöttet), akkor ezt a cellát ne írja felül.

Ez így ezt tudja :-)

 

 

Előzmény: Fferi50 (25906)
Fferi50 Creative Commons License 2014.09.15 0 0 25914

Szia!

 

Egy kicsit pofásítottam rajta, az eredeti soraid megjegyzésként benne maradtak (' aposztróffal kezdődik a VBA-ban)

A félkövérrel szedett sorok a működőek.

Első kérdésedre a választ a kékkel jelölt sorok adják - e két sort egy and operátorral össze is lehet fűzni egy sorba, de úgy gondoltam, így világosabb.

Második kérdésedre a pirossal jelölt sor ad választ. Az adott oszlopban jó mélyről indulva (általában a sorok számától), visszafelé lépünk - end(xlup) ez megfelel annak, amikor az end billentyű után a felfelé nyilat nyomod meg. Ez az első nem üres sorra fog állni (kivéve, ha az egész oszlop üres, mert akkor az első sorra), tehát az utána következő lesz az, amibe írhatunk. A makró így a 2. sorba kezdi az eredmény kiírását.

 

Sub for_loop()
For i = 1 To 5
    Sheets("Sheet1").Cells(1, "E").Value = Sheets("Sheet1").Cells(i, "A").Value
    'Sheets("Sheet1").Select
    'Range("A1").Select
    'ActiveCell.Offset(-1 + i, 0).Select
    'Selection.Copy
    'Range("E1").Select
    'Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    ':=False, Transpose:=False
    For j = 1 To 5
        Sheets("Sheet1").Cells(1, "F").Value = Sheets("Sheet1").Cells(j, "B").Value
        'Sheets("Sheet1").Select
        'Range("B1").Select
        'ActiveCell.Offset(-1 + j, 0).Select
        'Selection.Copy
        'Range("F1").Select
        'Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
         For k = 1 To 3
             Sheets("Sheet1").Cells(1, "G").Value = Sheets("Sheet1").Cells(k, "C").Value
             'Sheets("Sheet1").Select
             'Range("C1").Select
             'ActiveCell.Offset(-1 + k, 0).Select
             'Selection.Copy
             'Range("G1").Select
             'Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
             :=False, Transpose:=False
             macro1
             'Application.Run ("Macro1")
             With Sheets("Sheet1")
                  If .Cells(1, "L").Value <= .Cells(1, "I").Value And .Cells(1, "I").Value <= .Cells(2, "L").Value Then
                     If .Cells(1, "M").Value <= .Cells(1, "J").Value And .Cells(1, "J").Value <= .Cells(2, "M").Value Then
                        .Range("E1:G1,I1:J1").Copy Sheets("Sheet2").Cells(5000, "E").End(xlUp).Offset(1, 0)
                     End If
                  End If
             End With
            'If "L1" <= "I1" <= "L2" And "M1" <= "J1" <= "M2" Then
            'Range("E1:G1", "I1:J1").Select
            'Selection.Copy
            'Sheets("Sheet2").Select
            'Range("E1").Select
            'ActiveCell.Offset(-1 + i * j * k, 0).Select
            'Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
            :=False, Transpose:=False
            'End If
        Next k
   Next j
Next i
End Sub

Előzmény: a nagy zselatini (25913)
a nagy zselatini Creative Commons License 2014.09.15 0 0 25913

Szia,

 

köszi szépen, ez lett belőle, némi elakadással, amit lentebb részletezek (sheet-ek és makró más nevet kapott, mint korábban):

 

---------------------------

 

Sub for_loop()

 

For i = 1 To 5

 

Sheets("Sheet1").Select
Range("A1").Select
ActiveCell.Offset(-1 + i, 0).Select
Selection.Copy
Range("E1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

For j = 1 To 5

Sheets("Sheet1").Select
Range("B1").Select
ActiveCell.Offset(-1 + j, 0).Select
Selection.Copy
Range("F1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

For k = 1 To 3

Sheets("Sheet1").Select
Range("C1").Select
ActiveCell.Offset(-1 + k, 0).Select
Selection.Copy
Range("G1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Application.Run ("Macro1")

If "L1" <= "I1" <= "L2" And "M1" <= "J1" <= "M2" Then
Range("E1:G1", "I1:J1").Select
Selection.Copy
Sheets("Sheet2").Select
Range("E1").Select
ActiveCell.Offset(-1 + i * j * k, 0).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End If

Next k

Next j

Next i

 

End Sub

 

---------------------------

 

A kiemelt két sor csak próblákozás, nem működik (ezt leszámítva minden jó):

 

1. "ha I1 értéke L1 ... L2 közé, és J1 értéke M1 ... M2 közé esik (lehetőleg a határokat beleértve), akkor ..."

Ezt hogy lehetne "makróul" megfogalmazni? Elég bagatell problémának tűnik, de sehogy nem veszi be.

 

2. "A legutóbb/legutolsó betöltött sor utáni sort válassza ki" parancsot hogyan lehetne realizálni?

 

Köszönettel,

 

anzs

Előzmény: Fferi50 (25911)
homár hümér Creative Commons License 2014.09.15 0 0 25912

Koszonom, hamarosan megnezem.

Az excel szerint 1997-2003 lenyegeben azonos formatumu.

Előzmény: Fferi50 (25878)
Fferi50 Creative Commons License 2014.09.15 0 0 25911

Szia!

 

Három for ciklus egymásba ágyazva, amiknek a felső határait az A,B,C oszlopokban levő értékes cellák száma határozza meg.

A legbelső ciklusban

  • végrehajtod a másolást az E1:G1 tartományba
  • meghivod a "szamol" makrót (nem tudom, milyen gombra gondoltál, de makróban nincs szükség gombnyomogatásra
  • megnézed, hogy az eredmény a határok közé esik -e
  • ha igen, akkor jön a második számolás, ha nem akkor a ciklus a következő értékkel

Ennél nagyon rövidebb szerintem nem igen lesz.

 

Üdv.

Előzmény: a nagy zselatini (25909)
a nagy zselatini Creative Commons License 2014.09.14 0 0 25910

Előzmény: a nagy zselatini (25909)
a nagy zselatini Creative Commons License 2014.09.14 0 0 25909

Tisztelt Excel Szakértők!

 

A következő feladatot Ti milyen makróval oldanátok meg, a lehető legrövidebb kóddal:

- a mellékelt kép “szamitas” sheet-jén látható A, B és C oszlopok változókat jelentenek, melyek lehetséges értékei a sorokban vannak

- ezeket szeretném bemásolni E1:G1 tartományba, az összes lehetséges kombináció szerint (5 X 5 X 3 = 75)

- minden másolás után nyomja meg “szamol” gombot, ami lefuttat egy másik makrót (itt most nem látszik, de tegyük fel, hogy ott van “szamitas” sheet-en)

- ha egy adott gombnyomás után x és y a min-max határok közé esik, E1:G1 és I1:J1 tartományt másolja “eredmenyek” sheet Ei+1:Gi+1 és Ii+1:Ji+1 cellákba, ahol i a legutóbb betöltött sor száma

 

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

 

anzs

 

Fferi50 Creative Commons License 2014.09.14 0 0 25908

Szia!

 

Sajnos én nem találtam igazán többet, mint amit az Excel helpben láttam.

A kapcsos zárójelet maga az Excel teszi ki, amikor a Shift+Ctrl+Enterrel viszed be a képletet. Te nem tudsz ilyet csinálni.

VBA makróban a Range.FormulaArray tulajdonsággal lehet tömbképletet megadni vagy kiolvasni.

 

Üdv.

Előzmény: NeomatiK (25907)
NeomatiK Creative Commons License 2014.09.14 0 0 25907

Szia!

 

Nincs erről részletesebben valahol a neten leírás, példákkal tarkítva, hogy jobban megértsem? Mert így még nem egészen értem. Nem is volt kapcsos zárójel sem az általad leírt képletben.

Előzmény: Fferi50 (25905)
Fferi50 Creative Commons License 2014.09.13 0 0 25906

Szia!

 

Az Else: End If helyett írhatod simán csak, azt End If. Ha nincs Else ág, nem kell az Else kulcszót mindenáron kiírni.

 

Üdv.

Ps. Mi van akkor, ha nem ugyanaz nyitja meg?

 

Üdv.

Előzmény: Redlac (25904)
Fferi50 Creative Commons License 2014.09.13 0 0 25905

Szia!

 

tömbképlet: Olyan képlet, amely több műveletet hajt végre egy vagy több értékkészleten, majd egy vagy több eredményt ad vissza. A tömbképletek kapcsos zárójelek ( { } ) között találhatók, bevitelükhöz a CTRL+SHIFT+ENTER billentyűkombinációt kell használni.

Lényegében egy mátrixon/vektoron végzi a műveleteket, vagyis teljesen másként számol, mint egy normál képlet.

 

Amit írtam, az például minden egyes elemnél megnézi az előfordulás számát és megnézi, hogy a mellette levő cella üres-e, és az így keletkezett értékeket összegzi. Ha csak sima képletként írnád be, akkor hibát jelezne.

 

Üdv.

Előzmény: NeomatiK (25903)
Redlac Creative Commons License 2014.09.13 0 0 25904

Közben rájöttem:

 

Sub auto_open()
If Range("M138").Value = Empty Then
Range("M138").Value = Environ("USERNAME")
Else: End If
End Sub

NeomatiK Creative Commons License 2014.09.13 0 0 25903

Amúgy mi ez a tömbképlet, hogyan viselkedik? Miben más, mintha csak beírtam volna a cellába Enterrel?

Előzmény: Fferi50 (25897)
NeomatiK Creative Commons License 2014.09.13 0 0 25902

Fú! Ez az! Nagy vagy! :leborulós szmájli:

 

Köszönöm szépen! :)

Előzmény: Fferi50 (25897)
Redlac Creative Commons License 2014.09.13 0 0 25901

Valahogy úgy lehetne, hogy a makró figyelné, hogy üres-e az adott cella. Ha üres, beleír, ha nem, akkor nem fut.

 

Az elmélet megvan, de mit kellene elé bigyeszteni...

Előzmény: Redlac (25900)
Redlac Creative Commons License 2014.09.13 0 0 25900

Ó, szuper, köszönöm :-)

 

Akkor lenne még egy kérdésem...

 

ha ezt a fájl lementettük, akkor egy újabb (nem az elsőként lementő) személy általi megnyitásnál az újabb felhasználónevét fogja beírni.

Meg tudom oldani, hogy a sablonfájl első megnyitásánál működjön csak ez a beírás?

 

köszi előre is

Előzmény: Fferi50 (25899)
Fferi50 Creative Commons License 2014.09.13 0 0 25899

Szia!

 

Kb. így

Sub auto_open()

Sheets("Munka1").Range("M138").Value = Environ("USERNAME")

Sheets("Munka2").Range("M138").Value = Environ("USERNAME")

Sheets("Munka3").Range("M138").Value = Environ("USERNAME")

End Sub

 

 

Sheets("Munka1") stb. helyére beírod az első három munkalap nevét.

 

Üdv.

Előzmény: Redlac (25898)
Redlac Creative Commons License 2014.09.13 0 0 25898

Sziasztok!

 

Sub auto_open()

Range("M138").Value = Environ("USERNAME")

End Sub

 

ez remekül működik az első lapon

hogyan tudnám megoldani, hogy a 10 lapból az első 3 lapon ugyanígy beírja az M138-ba a felhasználó nevét?

Fferi50 Creative Commons License 2014.09.13 0 0 25897

Szia!

 

Úgy gondolom, ez lesz a helyes képlet:

 

=SZORZATÖSSZEG(C$2:C$15/DARABTELI($C$2:$C$15;$C2:C15);HA($D$2:$D$15="";1;0))

 

Tömbképletként kell ezt is bevinni, shift+ctrl+enter.

 

Az előző két hozzászólást felejtsd el.

 

Üdv.

Előzmény: NeomatiK (25891)
Fferi50 Creative Commons License 2014.09.13 0 0 25896

Bocs, ez csak akkor működik helyesen, ha az üres cellák száma minden terméknél ugyanannyi - azaz ugyanannyi áruházban vannak kint a termékekek.

Szerintem valami hasonló logikával kellene továbbgondolni. Még foglalkozom vele egy kicsit.

 

 

Előzmény: Fferi50 (25895)
Fferi50 Creative Commons License 2014.09.13 0 0 25895

Szia!

 

Próbáld meg az alábbi képletet:

 

=SZORZATÖSSZEG(C$2:C$15;HA($D$2:$D$15="";1;0))/DARABTELI($C$2:$C$15;$C$2)

 

Ezt tömbképletként kell bevinni, azaz nem sima enter, hanem shift+ctrl+enter.

 

Üdv.

 

Előzmény: NeomatiK (25891)
Redlac Creative Commons License 2014.09.13 0 0 25894

Rögzítettem a makrót, és ez lett belőle

 

Sub Nyom()
'
' Nyom Makró


    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
        IgnorePrintAreas:=False
End Sub

 

De működik :-)

Redlac Creative Commons License 2014.09.13 0 0 25893

Sziasztok!

 

Van egy jópofa 2 oldalas táblázatunk, ami sablonként van elmentve, majd azt nyitja meg mindenki. Kitöltik a megfelelő részeket, elmentik (makróval by Delila), aztán manuálisan kinyomtatjuk. A nyomtatónk tud kétoldalast, de ezt is be kell állítani külön még nyomtatás előtt, de van, hogy valaki elfelejti, és akkor két lapra nyomtatja.

Lehetne egy nyomtatás gombot készíteni, ami az alapértelmezett nyomtatóra küldi a cuccot, de úgy, hogy már be van állítva, hogy az bizony kétoldalasban menjen?

 

Köszi

totya0501 Creative Commons License 2014.09.13 0 0 25892

nem sikerült, de azért köszi.

Előzmény: Eredő Vektor (25880)
NeomatiK Creative Commons License 2014.09.13 0 0 25891

Helló!

 

 

Van egy táblázat.

 

A oszlopában egy bizonyos termék tételszáma.

 

B oszlopban az áruház jelölése, ahol az a bizonyos tétel hírdetve van. Tehát egy bizonyos termék másik több áruházban is hírdetve van.

 

C oszlopban a termék ára

 

D oszlopban, hogy el van-e adva (igen, nem, máshol vagy üres üres a cella). Ahol igen, ott a többi áruhazra vonatkozóan máshol van beírva. Ha 1 áruházban van hírdetve és igen, akkor erre a tételszámúra nincs máshol, mivel több áruházban nem is volt hírdetve csak egyben. Ahol nem van, ott arra a tételszámú termékre az összes áruházban nem van írva.

 

 

 

 

Ami a kérdés:

 

Összeadni azoknak a termékeknek az árait, amelyek még nincsenek eladva. Tehát amelyik D oszlop cellája üres. De egy tételt csak egyszer szabad számolni akárhány áruházban is van hírdetve.

A fenti példa esetén 2001+4000, azaz 6001-et kell kapnunk.

 

 

A tételszámok szerinti sorok nincsenek sorbarendezve az oszlopban, hanem összevissza lehetnek. Azaz a fenti 1,1,1,2,2,3,3,3,3,4,4,4,5,5 helyett lehet pl: 1,1,2,3,3,1,4,5,5,4,2,3,4,5,3 is.

 

És többszáz tételszámú termék van.

 

 

Külön oszlop igénybevétele nélkül meg lehet ezt csinánálni? Egyetlen egy függvénnyel? Ha igen, mi az? :))

 

RuN3$ Creative Commons License 2014.09.13 0 0 25890

Miként kivitelezhető excel x dátum összehasonlítása majd az x órával eltérő cella kiemelése?

pl:

2014.szeptember.13 - 13:00:00

2014.szeptember.13 - 15:00:00 (15:00 hasonlítsa össze 13:00-> ha több mint 2 óra telik el emelje ki 15:00)

2014.szeptember.13 - 16:00:00

2014.szeptember.13 - 18:00:00 18:00 hasonlítsa össze 16:00-> ha több mint 2 óra telik el emelje ki 15:00)

pimre Creative Commons License 2014.09.13 0 0 25889

Bocs, de nem bírom megállni, hogy ne idézzem Murphy idevágó törvényét: A számítógép a parancsaidat hajtja végre, nem pedig a kívánságaidat:-)))

 

(Amúgy tény, hogy a dátum formázása időnként valóban okoz gondokat) 

Előzmény: Sánta Kutya (SK) (25881)
Fferi50 Creative Commons License 2014.09.13 0 0 25888

Csak a cellahivatkozásokat ne tedd idézőjelbe!

Előzmény: kezdos (25886)
Fferi50 Creative Commons License 2014.09.13 0 0 25887

Szia!

 

Természetesen! De gondolom kipróbáltad azóta és ment is.

 

Üdv.

Előzmény: kezdos (25886)
kezdos Creative Commons License 2014.09.12 0 0 25886

Köszi, akkor már csak az a kérdésem, hogy mivel az oszlopban egymás alatt nevek, ezeket kell folyamatosan átjavítanom, így a "Itt egy ékezetet is tartalmazó szöveg1." helyett simán betehetem mondjuk, hogy "a1", az az: 

 

=HELYETTE(HELYETTE(HELYETTE("A1 ";"é";"e");"á";"a");"ő";"o")

 

? Jól értem? 

Előzmény: Fferi50 (25885)
Fferi50 Creative Commons License 2014.09.12 0 0 25885

Szia!

 

Használd a helyette függvényt: helyette(helyette(helyette("Itt egy ékezetet is tartalmazó szöveg1. ";"é";"e");"ö";"o");"ó";"o")

 

A helyette függvényt annyiszor ágyazd egymásba, ahány ékezetes betű van a szövegben.

 

Üdv.

 

Előzmény: kezdos (25884)
kezdos Creative Commons License 2014.09.12 0 0 25884

Abban kérném egy jólelkű segítő segítségét, hogy az alábbi - általam rejtélynek tűnő megoldást meg tudja adni képlet formájában:

 

Itt egy ékezetet is tartalmazó szöveg1. 

Ezt szeretném belőle kapni:

itt-egy-ekezetet-is-tartalmazo-szoveg1

 

Tehát kisbetű, ékezett helyett - és latin karakterek magyar helyett. 

 

Tud ebben segeíteni nekem valaki?

 

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

Sánta Kutya (SK) Creative Commons License 2014.09.12 0 0 25883

Végül is most sikerült megoldani úgy, hogy a "mire cserél" mezőbe aposztrófot írtam, mert véletlenül pont a cella elején volt a cserélendő szöveg, de mindenképpen abszurd.

Előzmény: Sánta Kutya (SK) (25881)
Sánta Kutya (SK) Creative Commons License 2014.09.12 0 0 25882

Bocs a második számsorért, már megint megtréfált ez a fórum.

Előzmény: Sánta Kutya (SK) (25881)
Sánta Kutya (SK) Creative Commons License 2014.09.12 0 0 25881

Excel 2010-ben a következőtől golyózom be éppen:

 

Egymás alatti cellák:

2013.10.13  0:01:30
2013.10.13  0:01:20
2013.10.13  0:01:10
2013.10.13  0:01:00
2013.10.13  0:01:25
2013.10.13  0:01:10
2013.10.13  0:01:08
2013.10.13  0:01:06
2013.10.13  0:01:04
2013.10.13  0:01:03
2013.10.13  0:01:02

Cellaformátum: szöveg. Valamikor az eredetinél volt aposztróf is, de ahogy húztam az egérrel, ez elveszett, de azért szöveg.

Ctrl H-val kicserélem a 2013.10.13-at 2014.10.11-re, összes cseréje.

Azonnal jobbra igazítódik, megváltozik a formátuma, levágja a másodperceket.

Kénytelen vagyok kézzel javítani az összes cellát.

 

Hogy lehet ezt a mocskot rávenni, hogy azt csinálja, amit én mondok neki, és ne azt, amit valami csökkentagyú Redmondban kitalált nekem?

2013.10.13  0:01:30 2013.10.13  0:01:20 2013.10.13  0:01:10 2013.10.13  0:01:00 2013.10.13  0:01:25 2013.10.13  0:01:10 2013.10.13  0:01:08 2013.10.13  0:01:06 2013.10.13  0:01:04 2013.10.13  0:01:03 2013.10.13  0:01:02

Eredő Vektor Creative Commons License 2014.09.12 0 0 25880

1. nincs benne ilyen, makróprogramozással lehet.

http://en.libreofficeforum.org/node/7548

2. adatérvényesítés van libreofficeban is

 

Előzmény: totya0501 (25879)
totya0501 Creative Commons License 2014.09.11 0 0 25879

Tudom, hogy nem excel, de majdnem az.

 

Két problémám lenne:

 

1.

LibreOffice Calc programban hogy tudom azt megcsinálni, hogy ha rákattintok egy cellára akkor annak sorát és oszlopát is valamilyen színnel kiemeli, vagy csak kijelöli?

 

2.

Hogyan lehet azt megoldani LibreOffice Calc programban, hogy két egymás mellett lévő oszlopban ha az egyik oszlop celláját kitöltöm akkor a mellette lévő oszlop ugyan azon sorában lévő cellába már ne lehessen beírni semmit?

 

Előre is köszönöm a válaszokat.

Fferi50 Creative Commons License 2014.09.10 0 0 25878

Bocs, az előző hsz neked szólna.

 

Itt a link még egyszer:

http://data.hu/get/8038429/001.xls

 

Üdv.

Előzmény: homár hümér (25873)
Fferi50 Creative Commons License 2014.09.10 0 0 25877

Szia!

 

Feltettem ide egy mintát, az első munkalapon képlet, és egy külön diagram lap.

 

http://data.hu/get/8038429/001.xls

 

Remélem megy ez nálad.

 

Ha gondod van jelentkezz, lsz.

 

Üdv.

Előzmény: Fferi50 (25875)
Hoex Creative Commons License 2014.09.10 0 0 25876

Üdv újra!

 

Sikerült megtalálnom majd' minden hibát, ezt kivéve:

 

Sheets("Map overview").Shapes(cl.Value).Line.ForeColor.RGB = RGB(191, 191, 191)

 

'object does not support this property or method'

 

Ez is csak a 2003-mas Excel-nél jött elő, szóval mondhatni 2007-től felfelé pöpec. :)

Fferi50 Creative Commons License 2014.09.10 0 0 25875

Bocs, nekem excel2003 van, nem tudom, az mennyivel okosabb ezen a téren, mint az excel2000.

 

A példából majd kiderül.

 

Üdv.

Előzmény: homár hümér (25873)
Fferi50 Creative Commons License 2014.09.10 0 0 25874

Szia!

 

Nyugi, már dolgozok rajta, hamarosan küldök egy példát.

 

Üdv.

Előzmény: homár hümér (25873)
homár hümér Creative Commons License 2014.09.10 0 0 25873

Az arany kiszamolasat kozvetlenul beirva nem fogadja el, allandoan keplethibat jelez, a fuggveny ablakot elohivva kategoriankent megadva az adatokat mar elfogadja, de
a helyezesnel az se mukodik, az F2-ot semmikepp se fogadja el valamiert.

Ezert utalom az excelt, rossz a dokumentacioja, nincsenek peldak, igy amikor hibat jelez, nem lehet rajonni, mi a baja, mert trivialis dolgokra mondja, hogy nem jo, de azt nem, hogy miert. Hiaba nezem a helpet, nincs indoklas, nincs reszletes pelda, csak feluletes valami, es en meg nem jovok ra, mi lehet a hasfajasa.:-(

Kicsit tovabbgondoltam a feladatot. Az arany kiszamolasa ezzel a modszerrel csak akkor hasznalhato, ha a B oszlop adatai egyertelmuen valtoznak. A gyakorlatban A es B oszlopok valtozasara kell szurni, es erre vegkepp nem lattam peldat a sugoban.

A pivotra se talalok megoldast, valoban csak egy adatot enged beirni, itt pedig tobb kell. Arra gondoltam ,talan szinezessel megoldhato lenne egy trukk, helyezes szerinti sorrendben szinek jelzik, melyik fajtahoz tartozik az adat.

De akkor is ket pivot tabla kell, egyiken a szamadatok, a masikon a reszaranyok.

 

Talan valoban adatbazissal jobban lenne kezelheto, de ahhoz meg ennyire se ertek. ;)

Előzmény: Fferi50 (25851)
Delila10 Creative Commons License 2014.09.10 0 0 25872

:)

Előzmény: Törölt nick (25869)
Eredő Vektor Creative Commons License 2014.09.10 0 0 25871

F5 funkció billentyű ugyanaz amúgy, mint a ctrl+g

Előzmény: Sánta Kutya (SK) (25870)
Sánta Kutya (SK) Creative Commons License 2014.09.10 0 0 25870

Szuper! Miket meg nem tudok az Excelről! E2000-ben nem ctrl G, hanem ctrl Q kell.

Előzmény: Delila10 (25868)
Törölt nick Creative Commons License 2014.09.10 0 0 25869

Az én apukám akkor is erősebb, mint a Tiéd!

:-P

Előzmény: Delila10 (25868)
Delila10 Creative Commons License 2014.09.10 0 0 25868

Makró nélkül:

 

Ctrl+g behozza az ugrás menüt. Irányított, Objektumok kijelöli a lapon az összeset, Delete.

Előzmény: Sánta Kutya (SK) (25866)
Törölt nick Creative Commons License 2014.09.09 0 0 25867

Nagyjából:

Dim Sh AS Shape

For Each Sh In Activesheet.Shapes

Sh.Delete

Next

 

Lehet, hogy kell rajta csinosítani, de ez az alap.

Előzmény: Sánta Kutya (SK) (25866)
Sánta Kutya (SK) Creative Commons License 2014.09.09 0 0 25866

Excel 2000

 

Weboldalról átmásolok egy táblázatot, soronként egy fénykép is van benne, ami nem kerül külön cellába. Hogyan tudom az összes képet törölni?

Hoex Creative Commons License 2014.09.09 0 0 25865

Akkor tulajdonképpen annyi a dolgom, hogy egy 2003-mas Office-ban csinálom meg a makrókat. :) 

Előzmény: Fferi50 (25864)
Fferi50 Creative Commons License 2014.09.09 0 0 25864

Szia!

A BRIGHTNESS tulajdonságot a Excel 2010-es verziójában vezették be, korábbi verziókban nem létezik.

 

Üdv.

Előzmény: Hoex (25863)
Hoex Creative Commons License 2014.09.09 0 0 25863

Szia!

 

Köszönöm a gyors választ.

 

Ezek szerint az a hibás paraméter teljesen felesleges? Nyilán van egyszerűbb parancs is, én azt használtam, amit a makrórögzítő csinált.

 

Ami a kijelölést illeti: több, mint 40 objektum van, remélem nem ez az egyetlen opció, hogy egyesével állítom be őket.

Előzmény: Delila10 (25862)
Delila10 Creative Commons License 2014.09.09 0 0 25862

Ha a .Fill.ForeColor.Brightness-t nullától eltérő értékre is állítanád valahol, ott is hibára futna. Ebből következik, hogy mindkét helyen törölheted a sort.

 

Amennyiben nem sikerül az objektumok együttes kijelölése, külön-külön add meg a paramétereiket.

 

With Sheets("Izé").Shapes("egyes")

...

...

End With

 

With Sheets("Izé").Shapes("kettes")

...

...

End With

 

Előzmény: Hoex (25861)
Hoex Creative Commons License 2014.09.09 0 0 25861

Üdv újra!

 

Pár hónapja voltam itt egy problémával, most újra előveszem. Sajnos a fájlt továbbra sem tudom elküldeni, mert bizalmas dokumentum, de a problémás kódokat kigyűjtöttem.

 

Előzmény:

 

Egy olyan eszközön dolgozom, ami egy részletes adatbázis továbbá grafikus felület, melyen összekötő vonalak és egyéb alakzatok vannak. Az alakzatok színe, formája aszerint változik, hogy az adatbázis, mely elemeire szűrünk. Például: azok az összekötők, ahol az adatbázis X értékei 1 és 10 között vannak, pirosak, 10 és 20 között kék, stb. A makró továbbá minden egyes "színezőgombhoz" generált egy jelmagyarázat dobozt is, a magyarázatban lévő adatok szintén aszerint változnak, hogy mely színezőmakrót futtatom. Ezt úgy oldottam meg, hogy minden új színező parancs törli az előző magyarázat box elemeit, majd egy rejtett munkalapból kimásolja az alap boxot, és a makró alapján generál egy új magyarázatot. Továbbá van még egy extra funkció a grafikus felületen: részletes és sima nézet, ami a főbb összekötőket és alakzatokat kiemeli, míg a mellék összekötőket és alakzatokat "hátra küldi", majd ugyanez visszafelé - itt úgy rögzítettem a makrót, hogy elemek kijelölése majd formázása (vastagítás, hátraküldés stb.)

 

A problémám a következő: ez az alkalmazás tökéletesen működik a gépen, ahol megírtam - Office 2013 alatt. Miután megnyitottam otthoni illetve egyéb gépeken, a makrók nem futnak le, helyette egy sor hiba jön fel. Szerintem ez a probléma a különféle Office verziók miatt van. Otthon 2003, másik munkahelyi gépen pedig 2007 van, ezeken nem futnak le a makrók.

 

Íme a kód egy részlete, a pirossal kiemelt résznél jelez a debugger:

 

ActiveSheet.Shapes.Range(Array("Color8")).Select
    With Selection.ShapeRange.Line
        .Visible = msoTrue
        .ForeColor.ObjectThemeColor = msoThemeColorText1
        .ForeColor.TintAndShade = 0
        .ForeColor.Brightness = 0 - object does not support this property or method
        .Transparency = 0
    End With
    ActiveSheet.Shapes.Range(Array("Text8")).Select
    Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "Main line"
    With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 9). _
        ParagraphFormat
        .FirstLineIndent = 0
        .Alignment = msoAlignLeft
    End With
    With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 9).Font
        .Bold = msoTrue
        .NameComplexScript = "+mn-cs"
        .NameFarEast = "+mn-ea"
        .Fill.Visible = msoTrue
        .Fill.ForeColor.ObjectThemeColor = msoThemeColorText1
        .Fill.ForeColor.TintAndShade = 0
        .Fill.ForeColor.Brightness = 0
        .Fill.Transparency = 0
        .Fill.Solid
        .Size = 9
        .Name = "+mn-lt"
    End With

 

A másik hiba a kijelöléseknél jött ki 2007-es Office-ban:

 

With Sheets("Izé").Shapes.Range(Array("egyes", "kettes", "hármas")) - object not found
    .Line.Visible = msoTrue
    .Line.Weight = 1.5
    End With

 

Ha ezeknek a kódoknak kompatibilitási problémája van, akkor mivel lehetne helyettersíteni, hogy működjön visszamenőleg is?

 

Előre is köszönöm a válaszokat, remélem most pontosabban tudtam fogalmazni, mint legutóbb.

homár hümér Creative Commons License 2014.09.09 0 0 25860

Szia,

 

nem emlekszem, hogy barkit surgettem volna, ha igy van, kerlek, szolj.

Előzmény: Fferi50 (25850)
XXXXXXXXXXXXX Creative Commons License 2014.09.09 0 0 25859

A jegyzettömbbe kopizós kézi megoldásod nem probléma, 2-3 perc az egész. Azzal van a baj, hogy a sorok elcsúsznak, üres sorok keletkeznek és lehet, hogy nincs benne rendszer. Persze ezt egy formázós rutinnal talán meg lehet oldani (ahogyan a letöltött adatokkal teszem most is), dolgozni fogok rajta. Kösz.

Előzmény: pimre (25858)
pimre Creative Commons License 2014.09.09 0 0 25858

Igazad van, nem tudom megoldani a dolgot. Azt hittem, hogy van egy CSV fájl, amit valahol elérsz, és megnyitsz. Viszont itt egy honlapról kellene letölteni az adatokat TEXT formában, amit nem tudok megoldani.

 

Kézi parancsokkal meg tudtam oldani. Megnyitottam a honlapot. A teljes oldalt kijelöltem, és kimásoltam (Copy). Ezután megnyitottam a Jegyzettömb programot. Ebbe bemásoltam (Paste), majd ezt az oldalt elmentettem. 

 

Az így mentett fájlt már be tudta olvasni a korábban beírt kódom.

 

Innen két lehetőség van.

 

1. Ha nem kell túl sűrűn elvégezned a műveletet, akkor esetenként magad is elvégzed kézzel. Majd ráereszted a kódot, ami megfelelő formában átteszi az adatokat Excelbe.

 

2. Bízzunk benne, hogy a megnyitás utáni kijelölést, másolást, és a jegyzettömbbe történő beolvasást, majd a mentést valaki meg tudja oldani Excel programmal, és az így készült fájlra már a program ráeresztheti a kódot.

Előzmény: XXXXXXXXXXXXX (25857)
XXXXXXXXXXXXX Creative Commons License 2014.09.08 0 0 25857

Adok egy linket egy holnapi versenyprogramról. A 3:20-as futamban pl. vannak a B oszlopban 0-val kezdődő karakterek. Tehát csak a B oszloppal van probléma, minden más jó az eredeti kóddal.

 

http://www.racingpost.com/horses2/cards/meeting_of_cards.sd?crs_id=30&r_date=2014-09-09&tab=lc_

 

Az új kódoddal ilyeneket csinál:

 

 

<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml">  <head>  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />  <title>Full Race Cards From Brighton | 8 September 2014 | Racing Post</title> <meta content="brighton racecards <meta content="Full day&#039;s race cards from Brighton  <link href="http://ui.racingpost.com/release/v67/ico/www/favicon.67.0.ico" rel="icon" type="image/x-icon" /> <link href="http://ui.racingpost.com/release/v67/ico/www/favicon.67.0.ico" rel="shortcut icon" type="image/x-icon" />  <link href="http://ui.racingpost.com/release/v67/css/common.67.0.css" rel="stylesheet" type="text/css" /> <link href="http://ui.racingpost.com/release/v67/css/www.67.0.css" rel="stylesheet" type="text/css" /> <link 

 

stb.

Előzmény: pimre (25856)
pimre Creative Commons License 2014.09.08 0 0 25856

Egy apró pontosítás: "Igen, ha már beolvasta a forrásformátumot, akkor valószínűleg hiába minden". Éppenhogy nem erről van szó. Beolvasta az adatot, mégpedig nem a forrásformátumban, hanem átállítva a saját - megadott feltételek melletti - formátumára. És valószínűleg ezt kell megakadályoznunk a TEXT formátumban történő beolvasással. A dolog mélyebb szakmai hátterét sajnos nem tudom.

Előzmény: XXXXXXXXXXXXX (25854)
pimre Creative Commons License 2014.09.08 0 0 25855

Azért még teszek egy utolsó kísérletet. Igaz, hogy egy .CSV fájllal kísérletezgettem, és nem internetről származó fájllal, de meglepne, ha elvi különbség lenne a kettő között.

 

Az általad írt sorok felhasználásával törölte a program a vezető nullákat. Amikor vak tyúkként megpróbáltam az alábbi programsorokkal lefuttatni, akkor megtartotta a vezető nullákat, és ha egy sorban több vesszővel elválasztott adat volt, akkor azokat és szépen külön oszlopokba tette. Szerintem tégy egy próbát ezzel! Veszteni nem veszthetsz:

 

Option Explicit

 

Sub Beolvas()

 

    Dim a, b

    b = Range("A2")

'    Set a = ActiveSheet.QueryTables.Add(Connection:="URL;" & b, Destination:=ActiveSheet.Cells(6, 1))

' helyette:

    Set a = ActiveSheet.QueryTables.Add(Connection:="TEXT;" & b, Destination:=ActiveSheet.Cells(6, 1))

    With a

        .FieldNames = True

        .RowNumbers = False

        .FillAdjacentFormulas = False

        .PreserveFormatting = True

        .RefreshOnFileOpen = False

        .BackgroundQuery = True

        .RefreshStyle = xlInsertDeleteCells

        .SavePassword = True

        .SaveData = True

        .AdjustColumnWidth = True

' Új sorok

        .RefreshPeriod = 0

        .TextFilePromptOnRefresh = False

        .TextFilePlatform = 1252

        .TextFileStartRow = 1

        .TextFileParseType = xlDelimited

        .TextFileTextQualifier = xlTextQualifierDoubleQuote

        .TextFileConsecutiveDelimiter = False

        .TextFileTabDelimiter = True

        .TextFileSemicolonDelimiter = False

        .TextFileCommaDelimiter = True

        .TextFileSpaceDelimiter = False

        .TextFileColumnDataTypes = Array(2, 2, 2, 2) ' Ez akkor érdekes, ha egy sorban több adat van, vesszővel elválasztva

        .TextFileTrailingMinusNumbers = True

 

' Kihagyandó sorok

'        .WebSelectionType = xlEntirePage

'        .WebFormatting = xlWebFormattingNone

'        .WebPreFormattedTextToColumns = True

'        .WebConsecutiveDelimitersAsOne = True

'        .WebSingleBlockTextImport = False

'        .WebDisableDateRecognition = True

'        .WebDisableRedirections = False

       

        .Refresh BackgroundQuery:=False

    End With

 

End Sub

Előzmény: XXXXXXXXXXXXX (25854)
XXXXXXXXXXXXX Creative Commons License 2014.09.08 0 0 25854

Igen, ha már beolvasta a forrásformátumot, akkor valószínűleg hiába minden. A beszélgetésben ahogy látom, fájlból olvas be, nem a webről, ezért az ottani kódsorokkal nem tudok mit kezdeni, hiába variálok, mindig hibaüzenet kapok. Ráadásul egyáltalán nem értek hozzá, a vaktyúk-effektus pedig itt biztos, hogy nem jön be. Mindenesetre kösz neked is.

 

Előzmény: pimre (25852)
pimre Creative Commons License 2014.09.08 0 0 25853

És itt van egy másik beszélgetés: http://www.mrexcel.com/forum/excel-questions/498231-csv-excel-losing-leading-zeros.html

 

Itt a #2 válaszadó javasolja a vezető nullák megtartására a TEXT paraméter használatát.

Előzmény: pimre (25852)
pimre Creative Commons License 2014.09.08 0 0 25852

Bár nem foglalkoztam a web lekérdezéssel, de találtam egy beszélgetés, ami talán adhat kiindulópontot: http://www.mrexcel.com/forum/excel-questions/332215-visual-basic-applications-code-open-text-files-excel-delimiter-%60.html

 

Ebben a kérdező (#3 hozzászólás) azt panaszolja, hogy ha egy rekord formátuma 04.000, azt az Excel 4-nek olvassa be. A #4 hozzászóló azt javasolja, hogy nem számként, hanem TEXT-ként olvassa be, mire a kérdező azt mondja, hogy működik a dolog. A beszélgetés további része már nem biztos, hogy érdekes a probléma szempontjából. 

 

Hátha errefelé lesz a probléma gyökere. Van egy olyan gyanúm, hogy ha már beolvasta az Excel szubrutin az adatot, akkor már késő lesz formázni, ezért a beolvasás pillanatában kellene megcsípni a forrásformátumot.

Előzmény: XXXXXXXXXXXXX (25843)
Fferi50 Creative Commons License 2014.09.08 0 0 25851

Szia!

 

A két képlet az első munkalapra:

 

G2 cellába: =KEREK( F2/SZUMHA(B:B;B2;F:F)*100;2)

H2 cellába: =SORSZÁM(F2;OFSZET($F2;HOL.VAN(B2;B:B;0)-SOR();0;DARABTELI(B:B;B2);1);0)

 

Ezeket a képleteket végighúzhatod az oszlopon. Az összeg sorokba eső képleteket a részletek összecsukása után egy mozdulattal törölheted.

 

A pivotokkal kapcsolatban egyenlőre egy megjegyzés:

Ilyen különböző mértékegységeket egy diagramon ábrázolni képtelenség, maximum két tengely van, ahova kétféle léptéket lehet felvenni (pl. abszolut szám és százalék). Marad még a sorbarendezés a szemléltetésre 3. "dimenziónak". Pár lehetőséget megpróbálok majd összerakni, de ehhez kell egy kis idő még.

 

Üdv.

 

Előzmény: homár hümér (25849)
Fferi50 Creative Commons License 2014.09.08 0 0 25850

Szia!

 

Ránézek és majd válaszolok. Légy türelmes.

 

Üdv.

Előzmény: homár hümér (25849)
homár hümér Creative Commons License 2014.09.08 0 0 25849

Feltoltottem ide egy nagyon egyszeru peldat:


http://data.hu/get/8032643/001.xls

 

A pivotnal az a legnagyobb gond, hogy egyesevel kell lapozni, ha grafikont akark megjeleniteni, es ugy tudom kinyomtatni. Vagy mindegyiket kulon munkalapra teszi, es akkor vegig kell lepkedni rajtuk es egyesevel kinyomtatni.

 

A legelso munkalapon egy "favagashoz" kernek segitseget.

Hogyan lehet megoldani, hogy valtozo teruletnel az adott teruleti szam oszesenjehez kepesti aranyt kiszamolja, majd ezek alapjan az elert helyezest is?

Kezzel megoldhato, hogy beirom az aranyokat, majd rendezen csokkeno sorrendben a teruletet, de nagyon sokaig tart.

 

Elore is koszonom.

Előzmény: Fferi50 (25822)
Sánta Kutya (SK) Creative Commons License 2014.09.08 0 0 25848

Akkor viszont arra kéne koncentrálni, hogy szövegként kezelje, a számformázással sosem kapsz ilyen eredményt,

Előzmény: XXXXXXXXXXXXX (25846)
XXXXXXXXXXXXX Creative Commons License 2014.09.08 0 0 25847

Sajnos ugyanaz a hiba, mint alant. Jól látod, valószínűleg a beolvasásánál kellene megvariálni valamilyen tulajdonságot, de ehhez én kevés vagyok. Persze az is lehet, hogy nincs rá megoldás. Kösz mindkettőtök segítségét.

Előzmény: Fferi50 (25845)
XXXXXXXXXXXXX Creative Commons License 2014.09.08 0 0 25846

Igen, lemaradt egy idézőjel a végéről, bocs. A megoldásod sajnos nem segít, mert így ezt csinálja:

 

04

44

632

02

07

02

 

Így van eredetileg, azaz ez lenne a helyes:

4

44

632

2

7

02

 

Ezek tulképpen nem számok, hanem karakterek, olyan eset is lehet, hogy 0-4/12 vagy 11d02.

 

 

Előzmény: Sánta Kutya (SK) (25844)
Fferi50 Creative Commons License 2014.09.08 0 0 25845

Szia!

 

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

 

Columns("A:B").NumberFormat = "0###########"

A formátum elején egy db nulla, utána legalább annyi # ahány értékes számjegyed lehet. Az sem baj ha több van, mert mindig csak az értékes számjegyek fognak megjelenni, nulla vezetővel.

 

DE: Ez MINDEN számot így formáz, akkor is, ha egyébként nem kellene elé a nulla!!!

 

Szerintem a beolvasásnál kellene valamilyen módon megadni azt, hogy a vezető nullákat ne egye meg (kvázi, kezelje szövegként ami bejön). Még nem találtam meg ennek a lehetőségét.

 

Üdv.

Előzmény: XXXXXXXXXXXXX (25843)
Sánta Kutya (SK) Creative Commons License 2014.09.08 0 0 25844

Először is lemaradt egy idézőjel a számformátumból.

Másodszor meg a kukacot nem ismerem, de mit lép "00" formátumra?

Előzmény: XXXXXXXXXXXXX (25843)
XXXXXXXXXXXXX Creative Commons License 2014.09.08 0 0 25843

Sziasztok!

 

Excel 2007 alatt lekérdezek a webről:

 

A kód:

 

Sub Beolvas()

    Dim a, b
    
    b = Range("A2")
    Set a = ActiveSheet.QueryTables.Add(Connection:="URL;" & b, Destination:=ActiveSheet.Cells(6, 1))
    
    With a
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = True
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .WebSelectionType = xlEntirePage
        .WebFormatting = xlWebFormattingNone
        .WebPreFormattedTextToColumns = True
        .WebConsecutiveDelimitersAsOne = True
        .WebSingleBlockTextImport = False
        .WebDisableDateRecognition = True
        .WebDisableRedirections = False
        .Refresh BackgroundQuery:=False
    End With

End Sub

Minden rendben van, de ha az egyik oszlopban nullával kezdődik egy szám, akkor a nullát levágja. Azaz:

0 = Jó

0-2 = jó

02 = 2 azaz nem jó.

 

Hiába formázom szövegként az oszlopot (Columns("A:B").NumberFormat = "@), az sem segít.

 

Van erre esetleg valamilyen megoldás?

 

 

Sánta Kutya (SK) Creative Commons License 2014.09.07 0 0 25842

De, biztosan van, nézd meg még egyszer, valami legördülőben. Most nincs előttem.

Előzmény: NeomatiK (25841)
NeomatiK Creative Commons License 2014.09.07 0 0 25841

adatok/érvényesítés/lista

 

 

Az "Érvényesítésen" belül nálam nincs "lista". (Excel2007)

Előzmény: Sánta Kutya (SK) (25840)
Sánta Kutya (SK) Creative Commons License 2014.09.07 0 0 25840

Beírod valahová a tételeket, mondjuk másik munkalapra, kijelölöd és adsz neki egy nevet, utána a kívánt cellában adatok/érvényesítés/lista, forrás a megadott név.

Előzmény: NeomatiK (25839)
NeomatiK Creative Commons License 2014.09.07 0 0 25839

helló!

 

Hogyan lehet legördülő választék listán csinálni egy ill. több cellához? És hogyan lehet behívni? Azaz hogy aktiv legyen a cellán?

Hoter Creative Commons License 2014.09.07 0 0 25838

Tökéletes. Hálásan köszönöm.

Előzmény: Fferi50 (25837)
Fferi50 Creative Commons License 2014.09.07 0 0 25837

Szia!

 

A legutolsó ha -ba ezt írd be:

HA(JOBB(A1;2)="né";BAL(A1;HOSSZ(A1)-2);"")

azaz kiegészíted, hogy hamis esetén üres szöveg kerüljön a cellába.

 

Üdv.

Előzmény: Hoter (25836)
Hoter Creative Commons License 2014.09.07 0 0 25836

Ez tényleg jó. Köszi szépen az észrevételt.

Nem lehet valahogy megoldani, hogy alapból ne mutassa a cellában, hogy HAMIS, ameddig nincs kitöltve az A1?

Előzmény: Fferi50 (25835)
Fferi50 Creative Commons License 2014.09.07 0 0 25835

Szia!

 

Ezzel a megoldással csak akkor kerülsz bajba, ha az adott betűcsoportok (né,éné,áné,stb.) nem csak a név végén, hanem valahol a névben is előfordulnak.

Ilyenkor kicsit bonyolultabb a dolog, mert HA függvényekbe kell szöveglevágó és cserélő függvényeket beágyazni:

 

Pl. =HA(JOBB(A1;3)="áné";BAL(A1;HOSSZ(A1)-3)&"a";HA(JOBB(A1;3)="éné";BAL(A1;HOSSZ(A1)-3)&"e";HA(JOBB(A1;2)="né";BAL(A1;HOSSZ(A1)-2))))

 

Üdv.

Előzmény: Hoter (25834)
Hoter Creative Commons License 2014.09.07 0 0 25834

Sikerült. (Mondom én, hogy a zárójellel van gondom.)

Íme: =helyette(helyette(helyette(A1;"áné";"a");"éné";"e");"né";"")

Előzmény: Sánta Kutya (SK) (25833)
Sánta Kutya (SK) Creative Commons License 2014.09.07 0 0 25833

Ugyanígy folytatható a sorminta, megint az A1 helyére írd be a harmadik helyette függvényt.

Előzmény: Hoter (25832)
Hoter Creative Commons License 2014.09.07 0 0 25832

Köszönöm. A zárójelezéssel volt gond. Most már csak a Gézáné - Gézá -val kellene kiegészíteni. (Nyújtsd a kisujjad, az egész karod kell. Bocsi.)

Előzmény: Sánta Kutya (SK) (25831)
Sánta Kutya (SK) Creative Commons License 2014.09.07 0 0 25831

Hát a belső függvény kimenete a külső bemenete, vagyis ahol Feri képletében az A1 van, oda kell beírni azt, amit először akarsz használni.

 

=helyette(helyette(A1;"éné";"e");"né";"")

Előzmény: Hoter (25830)
Hoter Creative Commons License 2014.09.07 0 0 25830

Bocsi, de nem sikerül ez az  egymásba ágyazott függvényt. Adnál copy paste segítséget? Köszi.

Előzmény: Sánta Kutya (SK) (25828)
Sánta Kutya (SK) Creative Commons License 2014.09.07 0 0 25829

Bocs, először. Az előszőr az más. :-)

Előzmény: Sánta Kutya (SK) (25828)
Sánta Kutya (SK) Creative Commons License 2014.09.07 0 0 25828

Előszőr helyette, éné, e (belső függvény), aztán külsőbe a másik. Gond csak akkor van, ha Iszméné is van a listában.

Előzmény: Hoter (25827)
Hoter Creative Commons License 2014.09.07 0 0 25827

És ki lehet egészíteni a helyette függvényt azzal, hogy pl. az Imréné-ről Imre legyen és ne Imré?

tetovált bunkó Creative Commons License 2014.09.07 0 0 25826

Sziasztok!

 

Érdeklődnék valakik Excelben játszik e LUXOR-t?

 

Hoter Creative Commons License 2014.09.07 0 0 25825

Tökéletes. Köszönöm.

Előzmény: Fferi50 (25824)
Fferi50 Creative Commons License 2014.09.07 0 0 25824

Szia!

 

A másik cella képlete, ha az A1 cellában van a Jakabné:  =helyette(A1;"né";"")

Ez akkor működik, ha csak a Jakabné van a cellában és nincs utána más.

Ha még van utána más is, akkor a képlet: =helyette(A1;"né ";"")

 

Üdv. 

 

Előzmény: Hoter (25823)
Hoter Creative Commons License 2014.09.07 0 0 25823

Kezdő vagyok az Excelben. Amennyiben él még a topik, a következőhöz szeretnék segítséget kérni:

Ha az adott cellába beírom az asszonynevet (Jakabné), a másik cellába már -né nélkül írja be automatikusan a nevet. (Jakab)

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

Fferi50 Creative Commons License 2014.09.05 0 0 25822

Szia!

 

Excel verziódra nem emlékszem, de már a korábbiakban is lehetett előre definiált "stílusokat" beállítani a pivot tábláknak, már a létrehozáskor is amit később lehet módosítani.

Úgy emlékszem, lehet alapértelmezést is beállítani, akkor minden pivot egyformán formázódik.

Egyébként minden pivotot egyedileg kell létrehoznod...

 

Ha mindet ki akarod "egyszuszra" nyomtatni, ahhoz makró kell, for each ciklussal nem kell tudnod, hogy hány pivottáblád van. A makróba akár egyedi formázást is tehetsz (pagesetup tulajdonságai).

A pivothoz tartozik többféle tartomány tulajdonság, azzal beállíthatod a nyomtatási területet.

 

De mégegyszer, ezek eléggé verziófüggő eszközök és lehetőségek.

 

Üdv.

Előzmény: homár hümér (25820)
Fferi50 Creative Commons License 2014.09.05 0 0 25821

Szia!

Ne haragudj, de most látom, hogy a myrng csak az E oszlopot tartalmazza!

 

A javaslat: range(cells(cell.row,"A"),cells(cell.row,"X")).enterior.colorindex=

 

Nem voltam elég figyelmes az előbb.

 

Üdv.

Előzmény: ypolito (25819)
homár hümér Creative Commons License 2014.09.05 0 0 25820

Pivot tablat par hete gyotrom, neha egeszen jo, de sehogy se jovok ra, hogyan lehet kinyomtatni. Csak egyesevel. Mindent egyedileg formazni.:-(

Semmi info se a helpben, se a weben.

Kifelejtettek belole vagy csak vak vagyok?

ypolito Creative Commons License 2014.09.05 0 0 25819

Hello!

 

volt ilyen verzióm, akkor is csak az "E" oszlopban lévő cellákat színezte, sort nem.

 

üdv

Előzmény: Fferi50 (25818)
Fferi50 Creative Commons License 2014.09.05 0 0 25818

Szia!

 

Ha már egyszer van egy saját tartományod (myrng), akkor annak a sorát kell kiszínezned:

 

cell.EntireRow.Interior.ColorIndex  e  helyett: myrng.rows(cell.row).interior.colorindex

 

Ez a myrng -nek azt a sorát fogja szinezni, amelyikben a cell van.

 

Üdv.

 

Előzmény: ypolito (25817)
ypolito Creative Commons License 2014.09.05 0 0 25817

Sziasztok!

 

Valaki legyen szíves módosítani annyit, hogy ne a teljes sort színezze, hanem csak az "A:X" tartományt?

Ha kiveszem az "entirerow"-t akkor csak az "E" oszlopban lévő azokat az elemeket színezi, amik több mint egyszer szerepelnek az oszlopban

"entirerow"-val viszont az egész sort telibe színezi (a többszörös elemeknél), ami hülyén néz ki, ezt szeretném orvosolni, de nem tudtam rájönni a mikéntjére.

 

köszi

P.

 

Sub Highlight_Duplicate_Entry()
    Dim ws As Worksheet
    Dim cell As range
    Dim myrng As range
    Dim clr As Long
    Dim lastCell As range

    Set ws = ThisWorkbook.Sheets("Listázás")
    Set myrng = ws.range("E7:e" & range("E" & ws.Rows.Count).End(xlUp).Row)
    With myrng
        Set lastCell = .Cells(.Cells.Count)
    End With
    myrng.Interior.ColorIndex = xlNone
    clr = 15

    For Each cell In myrng
        If Application.WorksheetFunction.CountIf(myrng, cell) > 1 Then
            ' addresses will match for first instance of value in range
            If myrng.Find(what:=cell, lookat:=xlWhole, MatchCase:=False, after:=lastCell).Address = cell.Address Then
                ' set the color for this value (will be used throughout the range)
                cell.EntireRow.Interior.ColorIndex = clr
                clr = clr + 1
            Else
                ' if not the first instance, set color to match the first instance
                cell.EntireRow.Interior.ColorIndex = myrng.Find(what:=cell, lookat:=xlWhole, MatchCase:=False, after:=lastCell).Interior.ColorIndex
            End If
        End If
    Next
End Sub

nmihaly90 Creative Commons License 2014.09.05 0 0 25816

sikerult

Előzmény: nmihaly90 (25815)
nmihaly90 Creative Commons License 2014.09.05 0 0 25815

probalom megoldani a `calculated field`-el... ha mondjuk ossze akarom adni a kettot akkor mukodik, de ha el akarom osztani akkor nem....valami otlet?

nmihaly90 Creative Commons License 2014.09.05 0 0 25814

2010 excelt hasznalok, elfelejtettem leirni, pedig olvastam...

Előzmény: Fferi50 (25813)
Fferi50 Creative Commons License 2014.09.05 0 0 25813

A % of  nem erre való .... sajnos.

Előzmény: nmihaly90 (25811)
Fferi50 Creative Commons License 2014.09.05 0 0 25812

Szia!

 

Számított mezőt vagy számított értéket is tehetsz a pivot táblába, ahol nem csak számítási műveleteket, hanem még függvényeket, képleteket is használhatsz. Verziótól függ, hogy melyik menürészben találod a pivottáblás menük között.

 

Üdv.

Előzmény: nmihaly90 (25811)
nmihaly90 Creative Commons License 2014.09.05 0 0 25811

Sziasztok!

 

Most fedezem fel a Pivot tabla lehetosegeit, mert munkam soran nagyon hasznos es lenne egy kerdesem amit nem talaltam meg neten.

 

Szoval Pivot tablaban van ket value amit kiiratok es nekem ezek szazalekos ertekere lenne szuksegem.

Meg lehet oldani pivot tablan belul? 

 

A `% of` kalkulacioval probaltam megoldani, de nem tudom, hogy azzal lehetseges-e

 

Valaszokat elore koszonom es remelem ertheto voltam, nem vagyok nagy forumos.

 

Udv,

N.M.

Sureg Creative Commons License 2014.09.05 0 0 25810

Köszi szépen, így rendben is van!

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

A harmadik HA vizsgálatra sosem megy rá, tekintettel arra, hogy ami nagyibb 12-nél, az nagyobb 6-nál is. Módosíts a sorrenden.

 

Előzmény: Sureg (25808)
Sureg Creative Commons License 2014.09.05 0 0 25808

Sziasztok!

 

Segítségetekre lenne szükségem a következő képlettel kapcsolatban.

 

=HA(E7<6;E7*G7*0,25;HA(E7>=6;E7*G7*0,5;HA(E7>=12;E7*G7)))

 

Az első, illetve második HA rendben van de a harmadiknál az E7-ben és G7-ben lévő összeg összeszorzása helyett az előző fv-ben lévő 0,5-el szorozza meg a szorzatot, nem tudom mi lehet a probléma, kérlek segítsetek.

 

Előre is köszi!

h_angolka Creative Commons License 2014.09.04 0 0 25807

Melyik megoldást használtad végül?

Előzmény: Skyline22 (25806)
Skyline22 Creative Commons License 2014.09.04 0 0 25806

Mükszik, nagyon köszönöm!!!!

Skyline22 Creative Commons License 2014.09.03 0 0 25805

Tesztelem, mind a 2-t, köszi

h_angolka Creative Commons License 2014.09.03 0 0 25804

=IF(AND($A2<=E$1,$B2>E$1),1,""), ez az a képlet, mely beosztja az 1-eseket az időpontokhoz.

 

Ha A2-ben van az első érkezési időpont, B2-ben a távozás, és ha felveszed az órákat 1-24-ig E1-F1-G1 stb oszlopokba, akkor E2 cellába kell kerülnie ennek a képletnek.

Ez aztán lemásolható az alatta lévő sorokba is.

 

Célszerű egy napra összegezni a munkaidőket, illetve hogy hány ember van bent.

 

Ha túl nyúlik 1 napon, akkor az éjfél utáni órákat a 24-re ráépítve kezelheted, tehát hajnali 1 óra 25, hajnali 2 óra 26 stb. A képlet ilyen módon jól működik. Nyilván A és B oszlopba is ilyen, 24 óra feletti értékeknek kell kerülni.

 

Én inkább napi szinten nézném, pl. szept. 1. 1-24 óra az 1. munkalapon, majd másik munkalapon szept. 2. 1-24 óra, mivel utána egy egyszerű Összesítéssel (Consolidation) az azonos struktúrájú adatok egy pillanat alatt összegezhetők havi szinten az utolsó munkalapon.

 

A 0-24 óra valójában tehát 1-24 óraként működik, hiszen az 1. megkezdett órára értelmezhető az 1.

 

Előzmény: Skyline22 (25800)
h_angolka Creative Commons License 2014.09.03 0 0 25803

Hát a kép, az nem tudom, hová lett.

 

Előzmény: h_angolka (25802)
h_angolka Creative Commons License 2014.09.03 0 0 25802

Csatolom a fájl képét, benne a képlettel, remélem, olvasható lesz.

Ha adsz mail címet, át tudom küldeni a fájlt.

 

 

Előzmény: Skyline22 (25800)
Eredő Vektor Creative Commons License 2014.09.03 0 0 25801

pl.: c1-be:

=HA(SZUM(A1:B1)<>0;1;0)

Előzmény: Skyline22 (25800)
Skyline22 Creative Commons License 2014.09.03 0 0 25800

Sziasztok!

 

Segítségre lenne szükségem. Egy teljesen "egyszerű" beosztásfigyelő táblázatot szeretnék összehozni és egy pontján elakadtam.

 

Példa:

 

A1 cella egy legördülő menü, ebből kell kiválasztani a kezdés időpontját. (csak egész órák vannak - ..., 6, 7, 8, 9, ...) (1-24-ig)

B1 cella szintén legördülő menü, ebből kell kiválasztani a munkavégzés időpontját. (szintén csak egész számok vannak - ..., 14, 15, 16, 17, ...) (1-24-ig)

 

A2 és B2 ugyan így van, mert több dolgozó van.

A3 és B3 -"-

.

.

.

 

 

 

A gondom az, hogy egy olyan táblázatra van szükségem vagy függvényre, mely megmondja, hogy az adott órában hány dolgozó volt jelen.

 

Vagyis a táblázat oszlopai a dolgozók (1. oszlop AB1 pár, 2. oszlop AB2 pár,...) sorai az órák.

 

Tehát ha van egy dolgozó, aki 6-ra jött és 12-ig volt, akkor az ő oszlopába 6-12 minden sorba írjon egy 1-t a függvény.

Ha a másik dolgozó 8-16 van, akkor az ő oszlopába meg 8-tól 16-ig írjon 1-t a függvény.

Remélem értelmezhető, amit írtam.

 

(van egy mellék oszlopom, ami kiszámolja, hogy a kezdés és a vég között hány óra telik el (a számítás kiküszöböli a 24 órán túli munkavégzést is pl.: 22-06), gondoltam arra is, hogy ha a függvény megkeresi a munkakezdés időpontjának megfelelő helyet a táblázatban és meg van, hogy hány órát dolgozott az adott ember, akkor annyi cellába ír 1-t. Fontos, hogy nincs munka megszakítás, aki dolgozik, az ledolgozza a beírt mennyiséget)

 

Tud nekem valaki segíteni ebben?

 

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

Timur Lenk Creative Commons License 2014.09.02 0 0 25799

Igen, természetesen. És most legszívesebben el is bújnék szégyenemben, amiért erre nem gondoltam magam. :-)

Előzmény: h_angolka (25798)
h_angolka Creative Commons License 2014.09.02 0 0 25798

Örülök, hogy megoldotta a problémát a tartomány definiálása.

Megcsináltad a makrórögzítést is az irányított szűréshez, vezérlőgombbal együtt?

Előzmény: Timur Lenk (25797)
Timur Lenk Creative Commons License 2014.09.02 0 0 25797

Ez olyan egyértemlű, hogy szégyenkezem, amiért nekem nem jutott eszembe. Tökéletesen működik, amit szeretnék.

 

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

Előzmény: h_angolka (25792)
h_angolka Creative Commons License 2014.09.02 0 0 25796

Közben megírtam a kódot :-) Működik, ezt meg kell ünnepelni egy jégkrémmel!

Előzmény: h_angolka (25793)
Eredő Vektor Creative Commons License 2014.09.02 0 0 25795

pivot - vagyis kimutatástáblát kell készítened az adat tartományból. Ennek a oszlopait/sorait szabadon mozgathatod/szűrheted. és frissül.

Előzmény: Timur Lenk (25788)
Sánta Kutya (SK) Creative Commons License 2014.09.02 0 0 25794

Hú, akkor rossz neked, ilyen esetben tényleg a makró a megoldás. Ha nem vagy gyakorlott, érdemes a makrórögzítővel kezdeni.

Előzmény: Timur Lenk (25790)
h_angolka Creative Commons License 2014.09.02 0 0 25793

Hali, én is kérnék egy kis segítséget makróírásban.

 

Szét kellene bontanom egy terméklistát + a hozzá tartozó, változó számú, egybe ömlesztve felsorolt regisztrációs számokat egy külön munkalapra, az alábbiak szerint.

 

Az új munkalapon az első (A) oszlopban legyenek egyesével a regisztrációs számok, és kerüljön minden egyes reg.szám mellé, a B oszlopba a saját termék név. A gond az, hogy van, ahol csak egy reg.szám van, máshol rengeteg reg.szám van egy cellába téve, adott termékhez rendelve.

 

A data.hu-ra feltöltöttem a fájlt, itt a linkje:

 

http://data.hu/get/8016310/mintapelda.xlsx 

 

Várom a javaslatotokat. Köszi!

h_angolka Creative Commons License 2014.09.02 0 0 25792

Szia, én is azt javaslom, amit Fferi50.

 

Az irányított szűréshez rögzíts egy makrót a következőképpen:

 

-1 lépés: Nevezd el oszlopokat kijelölve a teljes adattartományodat, ahol változik a sorok száma (később jönnek még adatok).

Pl. A-D oszlopok kijelölve, majd Névmező fehér ablakba kattintasz felül, bal oldalt és begépeled: Adatok és Enter. Ezáltal definiáltál egy tartományt, melyben az összes oszlopod benne van.

Az irányított szűrésnél innen kezdve erre a névre, Adatokra kell hivatkoznod.

 

0. lépés: A Fejlesztőeszközök szalagot előcsalod az Excel Office gombjára (Fájl menü) kattintva, kiválasztva az Excel beállításai pontot, és azon belül legfelül balra, Népszerű elemek pontjára lépsz. Ott jobb oldalt, a harmadik kockát bejelölve kiválasztod a Fejlesztőeszközöket.

 

1. Indítod a makrórögzítőt (kis piros pötty van a gombon), hagyd meg a felajánlott beállítást, hogy Ebben a munkafüzetben hozza létre a makrót.

2. Törlöd a tartalmát annak a területnek (jobb egérgomb, Tartalom törlése), ahol a korábbi szűréseredményed megjelent, de annál inkább nagyobb területet, hiszen az új futtatás több sort eredményezhet.

3. Bárhol állva indítsd el az Adatok szalagon a Speciális szűrést.

4. A megjelenő ablakban a  Listatartományhoz, az első fehér sorra írd be a tartományod nevét: Adatok

5. A Szűrőtartományodat téglalap alakban kijelölöd bekattintva a második fehér soron állva.

6. Kattintsd át a felső szövegnél, hogy Más helyre másolja, majd a harmadik fehér soron állva kattints bele abba a cellába, ahonnan kezdődően kéred az eredmény közlését (Hová másolja).

7. Kattints az Ok gombra.

8. Állítsd le a makrórögzítést (kék négyzetre kattintva).

 

+ 1 lépés: Menj fel a Fejlesztőeszközök szalaghoz, válaszd ki a franciakulcsos, egyéb szerelőkulcsos ikonú Beszúrás menüpontot, és a legördülő vezérlők közül válaszd ki a legelsőt, egy kis szürke dobozt. Ahogy rákattintasz, azonnal felugrik a makrólistád, amiben elvileg ez az új, egy darab makró lesz benne, kivéve, ha vannak korábban létrehozott personal makróid, vagy nyitva vannak még más, makrót tartalmazó Excel fájlok is.

 

Elvileg automatikusan a legutóbb létrehozott makrót jelöli ki az Excel, ehhez akarja hozzárendelni a vezérlő gombot.

Okézd le, majd a vezérlődoboz szövegét egy kattintással átírhatod Futtatás szövegre, vagy amire akarod.

 

Innen kezdve ha új adatsor érkezik, nincs gond, bemásolod az előző tartomány végére, vagy ha komplett új listát kapsz, mindent bemásolsz A-D oszlopokba. Ilyenkor automatikusan beleveszi az Adatok tartományba az Excel az új tartalmat és akár a kritériumokat is módosíthatod, megtartván a jelenlegi struktúrát és máris futtathatod a makrót a gombra kattintva.

 

Próbáld ki, és nézzük meg, jól fut-e Nálad.

 

 

 

 

 

Előzmény: Timur Lenk (25788)
Fferi50 Creative Commons License 2014.09.01 0 0 25791

Szia!

 

Nem olyan vészes ám a probléma szerintem.

 

Az egyik lehetőség, hogy az irányított szűrőt egyszer felveszed makróba, kicsit kipofozod, utána ráteszed egy billentyűkombinációra. Amikor kész vagy a sorok hozzáadásával, akkor a billentyűkombinációval frissíted. Ha egy példát felteszel valahova - már a makró felvétel utáni állapotban, akkor segítünk benne.

 

Másik lehetőség a kimutatás készítése. A mintafüzetedben ezt is meg tudjuk mutatni.

 

Üdv.

Előzmény: Timur Lenk (25788)
Timur Lenk Creative Commons License 2014.09.01 0 0 25790

Sajnos nálunk nincs Access, csak Excel. Ezért érdeklődtem, hátha tud valaki megoldást.

Előzmény: Sánta Kutya (SK) (25789)
Sánta Kutya (SK) Creative Commons License 2014.09.01 0 0 25789

Lehet vele szórakozni, de tipikus példája annak, amikor a leggyorsabb Accessbe importálni az egész hóbelevancot, normális dátumot csinálni a hónap-napból, és lekérdezést csinálni a szűrő helyett. Amikor bonyolult szűrőket kezdesz alkalmazni, az az egyik csalhatatlan jele, hogy adatbázis-kezelési problémát akarsz táblázatkezelőben megoldani.

 

 

Előzmény: Timur Lenk (25788)
Timur Lenk Creative Commons License 2014.09.01 0 0 25788

Sziasztok! Segítséget szeretnék kérni tőletek, mert elakadtam egy összetett munkafüzet készítése közben. 2007-es, angol nyelvű Excel használok, és egy havi kimutatást szeretnék készíteni. Egészen pontosan előadó, és az előadóhoz kötött hallgatók száma alapján szeretnék egy automatikusan frissülő munkafüzetet.

 

A munkafüzetemben négy oszlop van. Az első (A) oszlop a hónap, a második (B) oszlop a nap. A harmadik oszlop (C) az előadó neve, a legutolsó (D) oszlop pedig a hallgatók száma. Például egy átlagos sorom így néz ki:

 

Augusztus; 1; Kovács Béla; 15

 

És így tovább, végig az év napjai. Nekem azonban azt kell tudnom kigyűjteni, hogy mennyi hallgató volt. Tehát például azt, hogy kinél, és milyen napokon volt 15 hallgató, és mindezt havi lebontásban.

 

Irányított szűréssel le is tudom kérdezni, több munkalappal akár minden egyes hónapot is. Azonban az irányított szűrő nem frissül automatikusan, ha egy új sors adok a munkafüzetemhez (mivel sokszor késnek az előadók a számokkal, szabadságok miatt akár több héttel később is, egy másik hónapba csúszva). Hogyan tudom az irányított szűrőt automatikussá tenni?

 

Nagyon megköszönném, ha valaki segíteni tudna.

homár hümér Creative Commons License 2014.09.01 0 0 25787

Koszonom, tovabbitom.

Azt mondtak, tobb adatgazda volt es az elso nehany valasztas adatai nem erhetoek el.

Előzmény: Sánta Kutya (SK) (25759)
homár hümér Creative Commons License 2014.09.01 0 0 25786

Koszonom, megnezem.

Teruleti onkormanyzati valasztasrol van szo.

Előzmény: Delila10 (25758)
Fferi50 Creative Commons License 2014.08.30 0 0 25785

Ha eredmény megállapításra szeretnéd használni, akkor az A oszlopba ugye a csapatok/egyének nevei kerülnek és az A oszlop  is része a rendezési területnek!!!

 

 

Előzmény: Fferi50 (25783)
ND7000 Creative Commons License 2014.08.30 0 0 25784

Szívesen :)

Előzmény: Ádám Sipos (25782)
Fferi50 Creative Commons License 2014.08.30 0 0 25783

Szia!

 

Az úgy van:

  • ha az üres sor alatti területet jelölöd ki és rendezed úgy, hogy C oszlopnak nevezed a rendezési szempontot, valamint nincs fejléc, akkor szintén rendesen működik.
  • ha az üres sort is beveszed a rendezendő területbe, akkor is a C oszlop szerint kell rendezni (mivel az üres sorban nincs név), viszont ebben az esetben be kell jelölni, hogy van fejléc.

Az eredmény mindkét esetben ugyanaz, és ugyanaz mintha kitörölted volna az üres sort.

Szerintem így működhetett korábban.

 

Üdv.

Előzmény: Ádám Sipos (25782)
Ádám Sipos Creative Commons License 2014.08.30 0 0 25782

Köszi! :) Most már nekem is működik, töröltem az üres sort és jó lett. Azt viszont nem értem, hogy eddig miért működhetett, ugyanis ez egy korábbi táblázat átdolgozott verziója és ott az üres sorral együtt sem volt gond. De az már nem lényeges! Köszönöm a segítséget mindenkinek!

Előzmény: ND7000 (25781)
ND7000 Creative Commons License 2014.08.30 0 0 25781

A 4-es (üres) sort kitöröltem B3:L3 cellákba szűrő, működik.

Előzmény: Ádám Sipos (25780)
Ádám Sipos Creative Commons License 2014.08.30 0 0 25780

Ha úgy próbálom rendezni ahogy írtad, akkor teljesen összekuszálódik minden és az értékek is irreálisak. Egyébként igen egy sima képlettel kerülnek be a C oszlopba az adatok.

 

 

ND7000: Úgy is kipróbáltam ahogy leírtad, de még furább eredmények jöttek ki, meg egyébként is a 0 érték is egy érték és ahol 0 van ott annak is kell maradni.

 

Mindenesetre mellékelem a szóban forgó táblázatot, esetleg ha ránézne valaki. Köszi!

 

http://www.filedropper.com/tblzat

Előzmény: Fferi50 (25779)
Fferi50 Creative Commons License 2014.08.30 0 0 25779

Szia!

 

A C oszlopba ugye képlettel kerülnek be az adatok?

 

Ne csak a két oszlopot jelöld ki, hanem az egész táblázatot. A rendezési feltételeknél pedig add meg a C oszlopot és azt, hogy van fejléc.

 

Szerintem így már működnie kellene.

 

Üdv.

Előzmény: Ádám Sipos (25777)
ND7000 Creative Commons License 2014.08.30 0 0 25778

Én arra gyanakszom, így látatlanban, hogy, ahol nincs adat abban a sorban amibe a szűrőt berakod, azt nem veszi figyelembe. Tehát a 3 sor minden cellájában (ahol alatta adat van) irj be valami értéket.

Csak egy tipp, de én már jártam így.

Előzmény: Ádám Sipos (25777)
Ádám Sipos Creative Commons License 2014.08.30 0 0 25777

Valamiért a képet nem töltötte fel, de felraktam egy külső tárhelyre:

 



Ádám Sipos Creative Commons License 2014.08.30 0 0 25776

Sziasztok, szeretnék segítséget kérni. Akadt egy kis gonodom az adatok rendezésével. 2007-es Excelt használok és főként nagyon egyszerű táblázatokat szoktam készíteni.  A C oszlopban levő értékek (pontszámok) alapján szeretném rendezni az egész táblázatot, viszont ahogy kijelölöm az adott tartományt és rányomok a  Rendezés méret szerint (csökkenő) Z>A parancsra a B oszlopban található neveket tökéletesen a C oszlopban levő értékek szerint rendezi legnagyobbtól a legkisebbig, viszont a C oszlopban az értékek (számok) sorrendje nem változik.

Ez a táblázat egy rangsor szeretne lenni, amilyet korábban már sikerült is elkészítenem, nem egyszer és nem kétszer. Most azonban valami nem klappol. Lehet, hogy valami beállítást nem vettem figyelembe vagy szimplán valami elemi hibát nem vettem észre a sorok és oszlopok között. Mindenesetre, ha valaki tudna segíteni nagyon hálás lennék érte! Előre is köszi! Mellékelek egy képet a problémámról:

 

 

pippancs Creative Commons License 2014.08.30 0 0 25775

Látom megoldottad, én meg nem frissítettem az oldalt mielőtt elküldtem.

Előzmény: Pathmaster (25773)
pippancs Creative Commons License 2014.08.30 0 0 25774

Az ; helyett legyen :

Amit használsz képlet az az A1 és az aktuális sor átlagát adja

Előzmény: Pathmaster (25772)
Pathmaster Creative Commons License 2014.08.30 0 0 25773

A megoldás az ÁTLAG($A$1:A1) képlet lehúzása. Tehát ; helyett : karaktert kell használni.

Előzmény: Pathmaster (25772)
Pathmaster Creative Commons License 2014.08.30 0 0 25772

Sziasztok!

 

Excel 2013-at használok.

Az alábbi táblázatot szeretném képlettel előállítani:

 

Az ÁTLAG($A$1;A1) képlet lehúzásával hibás értékeket kapok. Az angol nyelvű verzióban az AVERAGE($A$1;A1) képlet lehúzásával ugyanazokat a hibás értékeket kapom. Sőt még a Libbre Office is ugyanazokat a hibás értékeket állítja elő. A hibás értékek felülről lefelé: 1,00; 1,50; 1,50; 2,00; 2,00; 2,00; 2,50; 2,50; 2,50; 2,50; 3,00; 3,00; 3,00; 3,00; 3,00.

A státuszsorban viszont helyesen jelenik meg az átlagérték. Arra gondoltam, hogy valami rosszul van beállítva az Excel-ben, és ezért értelmezi tévesen az átlagszámítást. Mi a megoldás? Köszönöm a segítségeteket.

pippancs Creative Commons License 2014.08.30 0 0 25771

Delila10 példájánál maradva

B3 legyen =A3&"-"&A4
D4 legyen =E1&"-"&E2

Előzmény: pavdaddi (25768)
Fferi50 Creative Commons License 2014.08.29 0 0 25770

Bocsánat, Alt+F11 hívja elő a VBA ablakot! Sorry.

Előzmény: Fferi50 (25769)
Fferi50 Creative Commons License 2014.08.29 0 0 25769

Szia!

 

Ctrl+F11 előhívja a Visual Basic ablakot. Ott insert - module, és oda írd be ezt a makrót.

 

Üdv.

Előzmény: pavdaddi (25767)
pavdaddi Creative Commons License 2014.08.29 0 0 25768

Delila10 , köszi szépen ez már majdnem tökéletes, fferi50 hez sajnos én hülye vagyok.

 

 

nem szőszálhasogatásként de ha e1:1 e2:12 és ha e1: 11 és e2: 2 akkor a D4 értéke ugyanannyi, ezt akármilyen A oszlopi változtatással tudnék pontosítani?

pl ha minden szám elé egy duplanullát beírnék??

Előzmény: Delila10 (25764)
pavdaddi Creative Commons License 2014.08.29 0 0 25767

 bocs, a kép lemaradt.

Előzmény: pavdaddi (25766)
pavdaddi Creative Commons License 2014.08.29 0 0 25766

Közben összeszámoltam hányszor van az E2 az E1 után az A oszlopban. az szerepel a D6 ban, de nem két perc volt :)

 

Feri modulapját még keresem lehet hogy pont az a jó megoldás csak még nem találtam merre is van.

Fferi50 Creative Commons License 2014.08.29 0 0 25765

Szia!

 

Ezt a kis felhasználói függvényt írd be egy modullapra:

 

Function hanyszorvan(ByRef holkeres As Range, mitkeres As Range) As Long
hanyszorvan = (Len(Join(Application.Transpose(holkeres.Value), ",")) - Len(Replace(Join(Application.Transpose(holkeres.Value), ","), Join(Application.Transpose(mitkeres.Value), ","), ""))) / Len(Join(Application.Transpose(mitkeres.Value), ","))
End Function

 

Ezután a meghívása:

 

=hanyszorvan(amiben keresel , amit keresel)

 

Feltétel: mind a két területnek oszlopnak kell lennie.

A keresendő értéknek kettőnél több cellát is megadhatsz. De csak az egymásutániakat fogja figyelembe venni.

 

Üdv.

Előzmény: pavdaddi (25763)
Delila10 Creative Commons License 2014.08.29 0 0 25764

Előzmény: pavdaddi (25763)
pavdaddi Creative Commons License 2014.08.29 0 0 25763

Azt hiszem nem fogalmaztam egyértelműen. az e1:e2 sorrendben hányszor szerepel az a oszlopban, kellene számszerűsetenem.

Előzmény: Eredő Vektor (25761)
pavdaddi Creative Commons License 2014.08.29 0 0 25762

ez valahogy nem jó nagyon sok az érték, de azért köszi.

Előzmény: Eredő Vektor (25761)
Eredő Vektor Creative Commons License 2014.08.29 0 0 25761

pl.:

=DARABTELI(A3:A10002;E2)+DARABTELI(A3:A10002;E1)

Előzmény: pavdaddi (25760)
pavdaddi Creative Commons License 2014.08.29 0 0 25760

helló.

 

mi ebben a hiba hogyan tudnám javítani? :

=DARABTELI(A3:A10002;E1:E2)

 

 

Az A oszlopban sok szám van olyan random szerűen. 

Az E1 és E2 tartományban két szám van.

 

Az E1: E2 hányszor szerepel az A3:A10002 oszlopban? lenne a kérdés.

 

Köszi előre is.

Sánta Kutya (SK) Creative Commons License 2014.08.28 0 0 25759

Én ezt egyszer feldolgoztam valakinek a kérésére, nagyon rendezett, gépbarát alakban vannak, le lehet szedni őket egy scripttel, és kitenni csv-be egy kis programozással.

Előzmény: Fferi50 (25757)
Delila10 Creative Commons License 2014.08.28 0 0 25758

Ide töltöttem fel:

 

http://data.hu/get/8002789/Szavazas_.xls

 

Mondhatom, oltári nagy káosz van a füzetben. Azonos adatok tömkelege különböző tartományokban. Vesződtem vele jó ideig, de még a harmadáig sem jutottam a rendrakásnak, csak gondoltam, ha átnézed, segít a továbbiakban.

 

Kék karaktereket adtam a címsorban, mikor az oszlop érvényesítést tartalmaz, és pirosat, ha képlet van benne.

 

A politikában való járatlanságomat mutatja, hogy nem értem, hogy lehet 1-1 körzetben több nyertes.

 

Előbb gatyába kell rázni a tartományokat, utána lehet csak elgondolkozni azon, milyen grafikonokat, kimutatásokat érdemes az ésszerűen bevitt adatokból kicsikarni.

Előzmény: homár hümér (25756)
Fferi50 Creative Commons License 2014.08.28 0 0 25757

Szia!

 

Kicsit off-ban kicsit félve, de megkérdezem a következőt:

 

A Nemzeti Választási Iroda honlapján szavazókörönként megtalálhatóak az adatok, a választás után nem sokkal. Szerintem bizonyára el lehet kérni/megvenni tőlük az információkat elektronikus úton.

Azt tutira sokkal könnyebb kezelni, mint adatokat bepüfölni - ellenőrizni több soron stb.

 

Üdv.

Előzmény: homár hümér (25756)
homár hümér Creative Commons License 2014.08.28 0 0 25756

Koszonom, egy lepessel megeloztel, en meg az adatsemat akartam tisztazni elobb.

 

Feltettem az eddigieket egy uj munkalapra.

Az 1 es 2 adott, azokat kell rogziteni, 3 es 4 meg nem teljesen vegleges.

A lenyeg az 5-ben van, ezektol fazom nagyon, manualisan hihetetlenul sok idot igenyelnek.

 

A megvalositas excel2000-ben kell.

 

Vagy ha adatbazis, akkor mysql-be attenni, ha tud webes grafikonokat csinalni, akokr az lesz a megoldas.;)

 

A link:

http://data.hu/get/8002073/Szavazas.xls

 

off on:

a neves listad teljes, vagy egy evtizedek ota gyujtogetett adatbazis resze?

Egy javaslatom van, mai meg hianyzik: Ugyet Lenke

off off. :-))

Előzmény: Delila10 (25724)
Delila10 Creative Commons License 2014.08.28 0 0 25755

Ez az "apró" elütés jó nagy hibát okozhat. :)

Előzmény: pimre (25752)
Delila10 Creative Commons License 2014.08.28 0 0 25754

Már gondoltam a

=KEREK.FEL(A1;(HOSSZ(A1)-1)*-1)

képletre is, a LOG-ra nem.

Előzmény: Fferi50 (25753)
Fferi50 Creative Commons License 2014.08.28 0 0 25753

Szia!

 

Ez nem lenne jobb?

 

=KEREK.FEL(A1;-INT(LOG10(A1)))

 

Üdv.

Előzmény: Delila10 (25749)
pimre Creative Commons License 2014.08.28 0 0 25752

Szia Delila, bekerült egy apró elütés: a képlet közepén a KEREK.FEL(A1;-5);HA(ÉS(A1>10^6;A1<=10^70) részben a 70 helyett ugye 7-et akartál írni?

 

Előzmény: Delila10 (25749)
h_angolka Creative Commons License 2014.08.28 0 0 25751

Szívesen! :-)  

Előzmény: wlara11 (25748)
Törölt nick Creative Commons License 2014.08.28 0 0 25750

Ez még aktuális?

Előzmény: Bendeke (25685)
Delila10 Creative Commons License 2014.08.27 0 0 25749

=HA(A1<=10^6;KEREK.FEL(A1;-5);HA(ÉS(A1>10^6;A1<=10^70);KEREK.FEL(A1;-6);HA(ÉS(A1>10^7;A1<=10^8);KEREK.FEL(A1;-7);KEREK.FEL(A1;-8))))

Előzmény: wlara11 (25748)
wlara11 Creative Commons License 2014.08.27 0 0 25748

Köszönöm szépen, így sikerült :)

 

Esetleg arra egy képlet, hha van ami milliós, de van, ami 10milliós, 100milliós egyszerre de nem szeretném külön átirogatni minden sorban? vagy rendezzem növekvő sorban és minden új nagyságrendnél újra beírom? 

Előzmény: h_angolka (25747)
h_angolka Creative Commons License 2014.08.27 0 0 25747

Szia,

 

Ha milliós nagyságrendű kerekítésre gondolsz, tartva a matematikai kerekítési szabályokat, akkor így:

 

Excel 2007:    =kerekítés(számot tartalmazó cella;-6), ilyenkor az 1500000 alatti számot 1 millióra, az e felettit 2 millióra kerekíti.

 

Ha úgy akarsz kerekíteni, hogy bármekkora is a szám 1 és 2 millió között és mindenképp felfelé kerekítsen, tehát 2 millióra, akkor pedig így:


Excel 2007:    =kerekítés.fel(számot tartalmazó cella; -7)

 

Excel 2010-ben a kerekítés.fel() neve =kerek.fel()

 

Ha angol a verziód, a round() és roundup() fgv-k kellenek, az argumentum elválasztó pedig vessző és nem pontosvessző.

Előzmény: wlara11 (25746)
wlara11 Creative Commons License 2014.08.27 0 0 25746

Sziasztok! 

 

Az lenne a kérédsem, hogyha excelben a például 1 987 654-et 2 millióra szeretném kerekíteni, az 1 574 321-et is és így tovább, akkor hogyan kéne beírnom?

 

Előre is köszönöm a válaszokat! :) 

Delila10 Creative Commons License 2014.08.27 0 0 25745

Szívesen.

Levél ment.

Előzmény: h_angolka (25744)
h_angolka Creative Commons License 2014.08.27 0 0 25744

Köszönöm Delila, nagyon jól működik!

 

Egy kérdés: megoldható-e az, hogy kizárólag a módosításokat mutassa a valtozaskovetes.xls fájl? Jelenleg a nem változott sorokat is mutatja megjegyzés nélkül - pl. az üres megjegyzéses sorokat törölhetné a program automatikusan a végén? 

 

Még egy dolog: talán jobb lenne, ha a valtozaskovetes fájlban lenne maga a makró, hiszen ez állandó, csak az alap két fájl tartalma változik (regi - uj).

Amikor következő nap lefuttatom a makrót, akkor a korábban már meglévő valtozaskovetes.xlsm végére kellene hogy illessze be az új változásokat. Ez egy historikus fájl elvileg, ami mutatja, hogy az idők során milyen változások voltak a vásárlói adatbázisban.

 

 

Előzmény: Delila10 (25741)
Eredő Vektor Creative Commons License 2014.08.27 0 0 25743

Persze ez nem mukodik, ha az altalad irt sorpoziciok is valtoznak

Előzmény: h_angolka (25740)
Eredő Vektor Creative Commons License 2014.08.27 0 0 25742

Csak tipp volt reszemreol, mert tapasztalat alapjan nalam bevalt ez a fajta egyszeruseg.

Termeszetesen csak peldanak szantam a kepet. Egyszeru osszehasonlito tombkeplet voltanal fogva nem okoz lassusagot terjedelmes tablaknal. (En ezzel szoktam vizsgalni tobb ezer soros tablakat) Illetve feleslegesse teszi az fkereses osszehasonlitast, amit valoban sokaig szamolna...

Delila pedig biztosan segit a makros megoldasaban.

 

 

 

Előzmény: h_angolka (25740)
Delila10 Creative Commons License 2014.08.27 0 0 25741

A képleteket nem írtad először, most átalakítottam a beillesztést értékek beillesztésére.

 

Elküldtem a címedre, várom, mire jutottál vele.

Előzmény: h_angolka (25738)
h_angolka Creative Commons License 2014.08.27 0 0 25740

Kedves Vektor, köszi a tippet, de azt hiszem, a javaslatod nem oldja meg a problémát.

 

A feltöltött példa csak sematikus, a valóságban több ezer soros táblázatról van szó, több tíz változóval, ahol a közös ID alapján minden egyes Vásárló minden egyes adatát meg kell vizsgálni és összevetni a korábbi verzióval (rengeteg oszlopról van szó), majd a változásokat egy külön fájlba kell kilistázni. Az egyes rekordok nem ugyanazon a sorpozíción maradnak, hanem a teljes táblában változtathatják pozíciójukat, hiszen jönnek új sorok és törlődnek is.

 

Ha csak az lenne a feladat, hogy egy pár tíz soros kis táblázatban nézzük meg, mi változott, akkor egy fkeres + hol.van dinamikus oszlopvizsgáló függvény kombináció rögtön mutatná, hol van változás. Ezt követően viszont manuálisan kellene levadászni és kigyűjteni külön fájlba a változásokat, vagy egy irányított szűrővel lehetne megcsinálni, de ez megint csak manuális.

 

Ráadásul a táblázaton belüli képlettömeg kezelhetetlenné tenné szerintem a fájlt, ami ráadásul napi szinten változik valamelyest (vásárlók adatai, új vásárlók lépnek be stb.), így ez ilyen formában nem tűnik a legjobb megoldásnak.

 

Delila megoldását még nem láttam, mert sajnos nem tudom erről a gépről letölteni a fájlt, de ő szerintem makróval oldotta meg.

 

Köszönöm mindenesetre a tippet.

Előzmény: Eredő Vektor (25739)
Eredő Vektor Creative Commons License 2014.08.27 0 0 25739

Elnezest Delilatol is, hogy belekontarkodok, de ket tabla osszehasonlitasat igy szoktak csinalni:

 

A G:H tartomanyban tombkeplet van, tehat ctrl+shift+enteres

Ahol hamis, az elter, ahol igaz az eredmeny az egyezik. Szurokkel, vagy akar pivottal a hamis (Eltero) /igaz(egyezo) ertekek listazhatok. 

 

En nem neztem meg amit feltoltottel, csak hatha segit...

Nyilvan lehet kodot is irni ra, csak szamomra ez agyuval verebre egy kicsit

 

Előzmény: h_angolka (25735)
h_angolka Creative Commons License 2014.08.27 0 0 25738

Köszönöm szépen Delila! Igazad van, az ID persze hogy nem változik, azt elírtam.

 

A benti gépemről nem tudom sajnos elérni a data.hu-t (tűzfal gond). Megtennéd, hogy átküldöd a mail címemre a feltöltött fájlt?

 

 

Előzmény: Delila10 (25737)
Delila10 Creative Commons License 2014.08.27 0 0 25737

Még egy fontos dolog:

Az ID nem változhat! Ez az a mező, ami szerint keresni lehet a másik fájlban. Ha ezt módosítod, akkor honnan lehet tudni, hogy a régiben melyik sor adataihoz tartozik?

 

Kell egy fix érték az összehasonlításhoz, és ez az ID.

Előzmény: h_angolka (25735)
Delila10 Creative Commons License 2014.08.27 0 0 25736

Egy kicsit módosítottam önhatalmúlag az elrendezésben.

 

A valtozaskovetes.xls-ben a Megjegyzés oszlopot áttettem az N oszlopba, így egyszerűbb a teljes sor másolása. Ebbe a megjegyzésbe azt a címet írtam be, ami az újban változott a régihez képest, pl. a T32-es ID-t tartalmazó sorban a Cím, a Felmondott szerződés, és a Szerződés megszűnésének időpontja.

 

A Tabla_uj.xlsx-ben a makró működésének könnyebb ellenőrzése érdekében festettem sárgára a változott cellákat. Természetesen erre nem lesz szükség élesben.

 

http://data.hu/get/7999163/Valtozasok.arj

Előzmény: h_angolka (25735)
h_angolka Creative Commons License 2014.08.26 0 0 25735

Köszönöm a tippet, feltettem a fájlokat a data.hu-ra.

 

Itt vannak a linkek a fájlokhoz:

 

http://data.hu/get/7997856/valtozaskovetes.xlsx


http://data.hu/get/7997857/Tabla_regi.xlsx


http://data.hu/get/7997858/Tabla_uj.xlsx

 

 

Előzmény: h_angolka (25732)
Sánta Kutya (SK) Creative Commons License 2014.08.26 0 0 25734

Sehogy. Feltöltheted a data.hu-ra.

Előzmény: h_angolka (25733)
h_angolka Creative Commons License 2014.08.26 0 0 25733

Hogy tudnék Excel fájlokat csatolni Kép helyett?

Előzmény: h_angolka (25732)
h_angolka Creative Commons License 2014.08.26 0 0 25732

Sziasztok!

Excel VBA kód íráshoz kérek segítséget.

 

Adott két táblázat, azonos struktúrával, de időnként változó értékekkel. A nevük ezt tükrözi: Tabla_regi.xls, Tabla_uj.xls

 

 

Feladat: összehasonlítani az új táblát a régivel, és a változásokat egy harmadik táblában listázni:  Valtozaskovetes.xls

 

A Valtozaskovetes.xls fájl struktúrája megegyezik az alap két tábláéval, de pluszban kell két oszlop. Az első plusz oszlop az első helyen lévő ID után kerül be, Megjegyzés néven. A második plusz oszlop a legvégére kerül Változás időpontja néven, és a változás aktuális dátumát jelzi, azaz a rendszeridőt (ma()).

 

Ha több változás is volt egy vásárlónál, akkor annyiszor kell másolni a teljes sort az új táblából, ahány darab változás előfordult a különböző mezőkben (cím, azonosító stb.).

Ha teljesen új a vásárló, akkor egyszer hozzuk át a teljes sor tartalmát át, ilyenkor a Megjegyzés: Új vásárló

A Megjegyzés kategóriák:
Új vásárló -  az ID alapján döntjük el (korábban nem létezett ID) Itt a teljes sort hozzuk át az új táblából
Módosított ID    A módosítás kategóriáknál annyiszor szerepeltetjük a vásárló összes adatát, ahány mező módosult, ha pl. 3 mező tartalma módosult, akkor 3 megjegyzés lesz és háromszor ugyanaz a sor
Módosított Vásárló név 
Módosított Kapcsolat típus 
Módosított Raktári azonosító
Módosított Város
Módosított Cím
Módosított Vásárolt termék
Módosított Kapcsolattartó
Módosított Más terméketet is kér
Módosított Mióta ügyfél
Módosított Felmondott szerződés?
Módosított Szer.megszűn.időpont?
Plusz oszlopba, Változás időpontja alá tegye be a rendszeridőt minden soron

 

Remélem, a fájlokat sikerült csatolni.

 

Mivel a valóságban több ezer soros táblákról van szó, az Exceles két ablak összehasonlítása verzió nem lenne túl jó megoldás, fkeres függvényezni meg ismét nem célszerű ennyi soron és ennyi változónál (még több van valójában).

 

Hogy indulnátok el? Logikailag az új tábla mezőértékeit változókba olvasnám be, és ezzel hasonlítanám össze a régi tábla értékeit, a kérdés már csak az, hogy hogyan?

 

Milyen ötletetek lenne?

 

 

 

Sánta Kutya (SK) Creative Commons License 2014.08.26 0 0 25731

Jaja, úgy a hülye is hozzá tudna szólni.

Előzmény: Delila10 (25730)
Delila10 Creative Commons License 2014.08.26 0 0 25730

Ide-oda kattintgattam az Előlnézet, a Bezár, és az Elküldöm gombok között, végül sikerült.

 

Unalmas, fantáziátlan embereknek való, hogy a gombok mindig csak azt csinálják, ami rájuk van írva.

 

Előzmény: Sánta Kutya (SK) (25729)
Sánta Kutya (SK) Creative Commons License 2014.08.26 0 0 25729

Ezért az egy képért már megérte belekezdeni a témába.

Előzmény: Delila10 (25728)
Delila10 Creative Commons License 2014.08.26 0 0 25728

Ez egy próba. Tegnap még nem tudtam képet csatolni.

 

Eredő Vektor Creative Commons License 2014.08.26 0 0 25727

na ne.

de tényleg. majd kijavítják.

Előzmény: Delila10 (25726)
Delila10 Creative Commons License 2014.08.26 0 0 25726

Aki még nem fedezte fel, ezután az Előlnézet gombbal érvényesítheti a hozzászólását, az Elküldöm gomb dísznek van a helyén.

Delila10 Creative Commons License 2014.08.26 0 0 25725

A Jelöltek lapon csak az egyik körzetet hagyd meg, töröld a D oszlopot.

 

Ha valaki több körzetben is jelölteti magát – vagyis hétszentség, hogy saját magát akarja képviselni, nem a körzetet –, akkor egy másik sorba vidd be az adatokat.

Előzmény: homár hümér (25723)
Delila10 Creative Commons License 2014.08.26 0 0 25724

Kitettem egy tervezetet  ide http://data.hu/get/7996856/Szavazas.xlsx.

 

Az egyes lapokon a bevitt adatokat táblázattá alakítottam, ami azt jelenti, hogy új adat bevitelekor a teljes új sor örökli a fölötte lévő cellák képleteit, érvényesítéseit, és a formátumot.

 

Mikor a Jelölő pártok lapon bővíted a sorokat, a Jelöltek lap E oszlopában lévő érvényesítések ennek megfelelően változnak.

Előzmény: homár hümér (25723)
homár hümér Creative Commons License 2014.08.26 0 0 25723

Jo reggelt, vegre sikerult befejezni a kulso takaritast, most johet a belso, ha benne vagytok.;)

Mivel az irasom stilusat kifogasoltatok, ismet megjegyzem, hogy probalok hangosan gondolkodni, de mivel nem vagyok szakerto, vannak dolgok, amiket tenykent kezelek, de nem ugy van. Ugyhogy keretik ilyenkor erre felhivni a figyelmemet, nem erossegem a kommunikacio.

 

 

Ugy tunik, a feladat adatrogziteses resze nagyon egyszeru, de a kesobbi elemzesek eleg bonyolultak lesznek, ezert szukseg lesz adatrendezesre es segedadatokra is.

Amitol nagyon felek, azok a grafikonok, jo lenne valami automatizmust talalni ra, mert egyesevel ezernyit csinalni nagyon idegolo lesz.:-((

 

Tehat, az adatbevitel az elejen egyszeru, mindossze ennyit kell rogziteni, de ket lepesben:

1. szavazas datuma, szavazokorzet, reszveteli arany, szavazasra jogosultak szama (ez nem mindenhol ismert)

2. jelolt neve, jelolo szervezet neve, kapott szavazat. (esetleg elert helyezes, vagy mas jelzes a kesobbi elemzesekhez)

 

Ha tablazatba viszem be, akkor - ahogy javasoltatok is - mindent egy sorba kell rogziteni, az 1-eseket igy egymas utan ismetelni kell a 2-esek szamatol fuggoen.

 

Azert kerdeztem az adatbazist, mert akkor az 1-eseket kulon kell bevinni, es a 2-eseket kell hozza csatolva rogziteni.

 

Illetve ugye rogton adodik a ketfele adatismetleses problema. Tablazatnal ha azonos, vagy hasonlo adatot irunk be, a program felajanl egy mintat, ami mar elofordult. Adatbazisnal viszont csak egyszer szerepelhet az adat, ami szervezeteknel nagyszeru, de ha 23 kulonbozo Kis Pista szerepel kulonbozo helyeken, akkor ezeket meg kell kulonboztetni, ami kulon nyomozast kivan, hiszen ugyan az a szemely maskor vagy esetleg azonos idoben mas korzetben is jeloltethette magat.

 

Ugy tunik, az adatokat evente kell rogziteni, mert ugy lehet majd kovetni a szavazokorzetek valtozasait, az meg kulon adatokat igenyel majd.

 

Az elso kerdesem akkor az, hogy szerintetek hogyan celszeru az adatbevitelt megvalositani, tablazatba vagy adatbazisba, es a fentiek elegendoek, vagy modositasra szorulnak.

Eredő Vektor Creative Commons License 2014.08.25 0 0 25722

próbáld ezekkel:

IDŐ()

IDŐÉRTÉK()

 

Szövegkonverziós függvényekkel szét lehet szedni óra:perc:másodpercre az IDŐ() fgv-hez  (bal, jobb, közép, szöveg.keres, szöveg.talál stb...)

Előzmény: Galamb Gábor (25721)
Galamb Gábor Creative Commons License 2014.08.25 0 0 25721

Köszöntem.

A SZUMHATÖBB függvény müködik.Köszönöm!!

 

De ott megakadtam hogy az "idő" oszlopba nem szám formátum van hanem szöveg.és sehogy nem tudom át konvertálni. ebbe kérnék segitséget.

 

  Idő          eltelt idő

07:51:30   0:00:12

07:51:42   0:00:07

07:51:49   0:00:05

07:51:54   0:00:08

Előzmény: Eredő Vektor (25709)
Sánta Kutya (SK) Creative Commons License 2014.08.25 0 0 25720

Tisztázzuk, magyar vagy angol Excelt használsz? Mert a magyarban nincs #name.

Előzmény: oxana44 (25717)
pippancs Creative Commons License 2014.08.23 0 0 25719

2010 Excel

 

=HA(HÉT.NAPJA(A1;2)>5;B1*1500;B1*1000)

Előzmény: oxana44 (25717)
ND7000 Creative Commons License 2014.08.23 0 0 25718

Nálam működik, bár a legvégéről hiányzik egy zárójel:   )

Előzmény: oxana44 (25717)
oxana44 Creative Commons License 2014.08.22 0 0 25717

Szia SK!

 

Köszi, hogy foglalkozol a problémámmal:)) értem, és csinálom.

De valami hiba még mindig van...bár egy kicsit kezdő vagyok...

Hiába a hét.napja() függvény, erre nekem #name   hibát ír ki. Mi lehet a baj? A dátumos cella dátumként van formázva. Próbáltam dátumfüggvénnyel is beírni a dátumot ( bár rettentő macerás lenne így beírni 156 dátumot), de ugyanezt a hibát írta ki..

A1- maga a dátum ( 1 adott nap)

B1- túlórák száma

C1 - idejönne a kiszámolt összeg.( hétköznap 1000ft/óra, hétvégén 1500/óra)

 

C1=ha(hét.napja(A1)=<5;(B1*1000);ha(hét.napja(A1)>5;(B1*1500))

 

ez így biztos nem jó, de nem tudom hogyan javítsam:))

 

köszi

 

Előzmény: Sánta Kutya (SK) (25716)
Sánta Kutya (SK) Creative Commons License 2014.08.22 0 0 25716

hét.napja()

Azt már egy ha() függvénnyel megvizsgálhatod.

 

Általában úgy lehet keresni, hogy a függvénybeszúrásnál kiválasztod a kategóriát (jelen esetben dátum és idő), és azt végignézed.

Előzmény: oxana44 (25715)
oxana44 Creative Commons License 2014.08.22 0 0 25715

Sziasztok! Segítsetek! AZ excellben van olyan függvény, ami egy dátumról ( pl 2014.08.22) el tudná dönteni, hogy az munkanap vagy hétvége? Túlórákat kellene kiszámolni, és más óradíj tartozik a hétköznaphoz, mint a hétvégéhez.  Ha még az ünnepnapokat is "érzékelné" a függvény, még jobb lenne...

putto13 Creative Commons License 2014.08.22 0 0 25714

Köszönöm a választ!

Előzmény: Eredő Vektor (25713)
Eredő Vektor Creative Commons License 2014.08.22 0 0 25713

Nincs ilyen automatizmus az excelben.
Makróval  a munkalapváltás eseményébe be lehet írni, hogy minden egyes beírás után rendezzen újra.

Szerintem a beírást követően a rendezés gombra kattintani sem túl nagy kényelmetlenség. Főleg, hogy az eszköztárra ki lehet tenni a gombot, vagy billentyű kombinációhoz lehet rendelni...
Beviszem a változásokat, megnyomom a rendező billentyűkombinációt, és kész is.

 

Lehet kimutatástáblát készíteni az adataidból, ez rendelkezik sorbarendező paraméterekkel is, ami a kimutatás(pivot) tábla frissítéssel automatikussá válik.

 

Előzmény: putto13 (25711)
hát ő Creative Commons License 2014.08.22 0 0 25712

Nagyon köszönöm így majdnem tökéletes. minden müködik csak amikor bezárom a munkafüzetet hiba keletkezik mert a munkafüzet lapvédelemmel védett. A2 cellát feloldottam, fehérre festettem a kiszámított dátumot, így aki használja talán nem töröl bele. Azért kellett elrejtenem mert ezt a kiszámított dátumot az A10 es cellába szöveggel összefűzve használom ami már látható védett de így nem szól a makróhiba miatt.

köszönöm a sok segítséget.

Előzmény: Fferi50 (25707)
putto13 Creative Commons License 2014.08.22 0 0 25711

Üdvözlök mindenkit!
Lenne egy kérdésem:
Van egy táblázatom, benne emberek (A oszlop), akik az idő során különböző pontszámokat kapnak (B-X oszlop) AZ Y oszlopban összesítve vannak az egyének által kapott pontok, a BL oszlopban pedig a sorszám található, amelyik megadja, hogy hanyadik az illető a csoport sorrendjében.
Kérdés: Mivel a B-X oszlopokban gyakran változik az eredmény, megvalósítható-e az, hogy az érték beírása után az automatikusan kiszámított sorrend alapján automatikusan rendeződjön az állomány, vagy csak a Kijelölés - Adatok - Sorba rendezés... módszerrel kézzel lehet megcsinálni?
(Jó lenne a pillanatnyi sorrendet mindig látni.)
____________
 Excel2002

Delila10 Creative Commons License 2014.08.22 0 0 25710

Az egyéni kategóriában ki tudod választani, majd a RÉSZÖSSZEG függvénnyel összegezheted az oszlopot. Ez a függvény mindig az aktuális szűrésben látszó értékeket szummázza.

 

Előzmény: Galamb Gábor (25708)
Eredő Vektor Creative Commons License 2014.08.22 0 0 25709

szumhatöbb, ab.szum függvényeket nézd meg. Mindkettő jó erre, amit írsz.

Előzmény: Galamb Gábor (25708)
Galamb Gábor Creative Commons License 2014.08.22 0 0 25708

Sziasztok! 

 

Van egy oszlop amibe idő van megadva.

Szeretném a szűrt időket összeadni.

Amikor azt szeretném hogy minden egy percnél nagyobb cellát adjon össze az megy.

De én két idő közöttieket szeretném. 

Pl egy és két perc közöttieket. 

Ebbe szeretnék segítséget kérni

 

Előre is köszönöm

Fferi50 Creative Commons License 2014.08.22 0 0 25707

Szia!

 

Ebben az esetben  képlet:  range("A2").formula="=Today()+H2"

 

Üdv.

Előzmény: hát ő (25706)
hát ő Creative Commons License 2014.08.22 0 0 25706

köszönöm szépen mindkettőtöknek a segítséget. Fferi utolsó makrója megoldotta a problémát hálás vagyok.

 

De még van egy kis bibi :) Fferitől kapott makró és minden függvény csak számokkal tud dolgozni ezért át kellett alakítanom a makrót így:

 

If Not Intersect(Target, Range("A9")) Is Nothing Then
        If Not Range("A2").HasFormula Then Range("A2").Formula = "=MA()+H2"

 

Az A9 es cella lenyíló számokat és betűket tartalmaz. Ha itt változtatom az értéket egy másik munkalapon csak számként jelenik meg. Ezt a számot a =szum(másikmunkalap!B2) függvénnyel visszahozom a Munka1 be a H2 cellába. tehát a makró ezzel dolgozik. Még is hiba van az A2 be mégpedig "a képlet azonosítatlan szöveget tartalmaz" A szerkesztő lécbe folyamatosan ott van =MA()+H2 de az eredmény #név. Ha a szrkesztő lécbe kattintok majd entert ütök a képlet változatlan marad de hozza a dátumszámítást helyesen.

 

Mit rontok már megint el???? :)

Előzmény: Fferi50 (25704)
Delila10 Creative Commons License 2014.08.22 0 0 25705

Ugorjunk neki újból!

Pontos címeket írj, ne "pl:A9 ben változik az érték" módon.

 

Nagy nehezen előbányásztam a füzetet, amiben 1 éve megírtam a makrókat.

 

Abban az egyes lapokon az általad meghatározott sorokban összevont cellák vannak az A:D, és F:I oszlopokban. Egy-egy lapon Ter_1, Ter_2, és Ter_3 nevet adtam ezeknek a tartományoknak, amikben érvényesítések voltak. Ott az volt a feladat, hogy ha bármelyik lapon választasz egy értéket bármelyik érvényesítésben, akkor a másik két lapon az ezzel azonos érték helyett üres string legyen.

 

Most mit is akarsz elérni? Melyik lapon hova viszel be dátumot, és mi változzon meg ennek a hatására? Konkrét helyeket írj, melyik cellákba írhatsz, melyek mire módosuljanak.

Előzmény: hát ő (25703)
Fferi50 Creative Commons License 2014.08.22 0 0 25704

Szia!

 

Ezt próbáld ki a Munka1-ben.

 

Munka1(Also)
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim nev, lapnev$
    Application.EnableEvents = False
    Application.ScreenUpdating = False
    lapnev$ = ActiveSheet.Name
    nev = Target.Value
    If Not Intersect(Target, Range("Ter_1")) Is Nothing Then Torles nev, lapnev$
    Range(Target.Address) = nev
    If not Intersect(Target, Range("A1")) Is Nothing Then 
        If Not Range("B1").HasFormula Then Range("B1").Formula = "=today()-A1" ' ide természetesen a Te képleted kell írni.

    endif
    Application.EnableEvents = True
    Application.ScreenUpdating = True
End Sub

 

A thisworkbook-ban maradjon az én eredeti makróm.

 

Üdv.

Előzmény: hát ő (25703)
hát ő Creative Commons License 2014.08.22 0 0 25703

Szia.

Köszönöm hogy foglalkozol a dologgal.

 

Van egy közös lista amit 3 munkalapon különbözö cellákban lenyílóként lehet elérni.

A cél hogy bármely munkalapon a listából egy elem csak egy cellában szerepelhet, ha tehát a Munka1 valamely cellájába a listából értéket adok és a Munka2 valamely cellájába ugyan azt az értéket kiválasztom akkor a Munka2 cellájába jelenjen meg és a Munka1 cellájából törlődjön. Ez volt eddig Delila makrója ami csodásan működöt.

 

ehhez szeretném a te makródat párosítani

 

A Munka1  pl A10 cellája úgy viselkedjen ahogy előzőekben megcsináltad Tehát ha pl:A9 ben változik az érték akkor A10  =  Ma()-A9

 

 

Tehát  a két makró külön kölön elvégzi a feladatát csak amikor Delila összetette már nem.

 

Az ö makrója megállt: a Munka2-ben kiválsztott cella értéket kapott és ua érték szerepelt Munka1-ben akkor Munka2-ben megjelent és Munka1-ben is holott a Munka1-ből törlődnie kellett volna.

 

Mára az is kiderűlt hogy a te makród sem müködik Delila makrójával, ugyanis nem fixálta a tegnapi értéket. Mikor ma megnyitottam a mai dátummal dolgozott.

 

Remélem most érthetően írtam le és bocs ha ködösen érthetetlenül fogalmazok.

Fferi50 Creative Commons License 2014.08.21 0 0 25702

Szia!

 

Nem egészen értem amit írsz.

Arról volt szó, hogy amíg a cellában nem változtatod az értéket, addig maradjon a "tegnapi" érték, változtatás után pedig legyen benne a képlet.

Mit kellene többször változtatni?

 

Lehet, hogy félreértjük egymást. Az eredeti (nem kombinált) változatban úgy működött, ahogy szeretted volna?

 

Üdv.

Előzmény: hát ő (25701)
hát ő Creative Commons License 2014.08.21 0 0 25701

Szia köszönöm, de most sem tökéletes. Sajnos egy munkalap megnyitásával csak egyszer tudok változtatni. Ahhoz hogy még egyszer változtassak be kell zárnom majd újra megnyitnom a munkafüzetet.

Előzmény: Fferi50 (25700)
Fferi50 Creative Commons License 2014.08.21 0 0 25700

Szia!

Ezt

     If Not Intersect(Target, Range("Ter_1")) Is Nothing Then

          Torles nev, lapnev$

          lapnev$ = ActiveSheet.Name

          nev = Target.Value

          Range(Target.Address) = nev

          Exit Sub

     End If

 változtasd meg a következők szerint:

     lapnev$ = ActiveSheet.Name

     nev = Target.Value

     If Not Intersect(Target, Range("Ter_1")) Is Nothing Then

          Torles nev, lapnev$

          Range(Target.Address) = nev

          Exit Sub

     End If

 

Véletlenül hátrább került az értékadás, mint a vizsgálat.

 

Üdv.

Előzmény: hát ő (25699)
hát ő Creative Commons License 2014.08.21 0 0 25699

Köszönöm a választ.

Bemásoltam a kibővítette makrót és Fferi makróját a

Thisworkbookhoz:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Munka1.Range("B1").Value = Munka1.Range("B1").Value
End Sub

sajnos a Module1 hibát jelez
Run-time error'9':
Subscript out of range

itt :  Sheets(lapnev$).Select.

és nem is törli az azonos adatot.



Válasz a kérdésre:
A makrók így voltak formázva a munkafüzetbe csak kimásoltam
a totalcommander jegyzettömbjébe ahol a formátum menün belül
a hosszú sorok tördelése be van állítva. Így megmarad a szöveg formázása.

Előzmény: Delila10 (25697)
Delila10 Creative Commons License 2014.08.21 0 0 25698

Elküldtem.

Előzmény: Eredő Vektor (25696)
Delila10 Creative Commons License 2014.08.21 0 0 25697

 

A kibővített makró:

 

Munka1(Also) Private Sub Worksheet_Change(ByVal Target As Range)    

     Dim nev, lapnev$

   

     Application.EnableEvents = False    

     Application.ScreenUpdating = False  

  

     If Not Intersect(Target, Range("Ter_1")) Is Nothing Then

          Torles nev, lapnev$

          lapnev$ = ActiveSheet.Name

          nev = Target.Value

          Range(Target.Address) = nev

          Exit Sub

     End If

 

 

     If Intersect(Target, Range("A1")) Is Nothing Then Exit Sub

     If Not Range("B1").HasFormula Then Range("B1").Formula = "=today()-A1" ' ide természetesen a Te képleted kell írni.    

     Application.EnableEvents = True    

     Application.ScreenUpdating = True

End Sub

 

A Thisworkbookhoz is vidd be Fferi makróját.

 

Kérdés: a makrót ömlesztve mutatta a fórum, egyenként kellett szétszabdalnom a sorokat, és szóközökkel pótolnom a tabulátorokat. Két böngészővel (Google Chome, és FireFox) is ilyen gyalázatos külsővel hozta. Te hogy vitted be tagoltan? Ugyanígy?

 

 

 

 

Előzmény: hát ő (25694)
Eredő Vektor Creative Commons License 2014.08.21 0 0 25696

Kíváncsi lettem, megmutatnád nekem is?

Előzmény: Delila10 (25692)
Eredő Vektor Creative Commons License 2014.08.21 0 0 25695

Vannak speicális táblázatkezelő programok tudományos, mérnöki célokra fejlesztve.

Ezekben vannak ilyenek.

Előzmény: NeomatiK (25691)
hát ő Creative Commons License 2014.08.21 0 0 25694

Szia Delila10

meg vannak az adatok.

Munka1(Also)
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim nev, lapnev$
    Application.EnableEvents = False
    Application.ScreenUpdating = False
    
    lapnev$ = ActiveSheet.Name
    nev = Target.Value
    If Not Intersect(Target, Range("Ter_1")) Is Nothing Then Torles nev, lapnev$
    Range(Target.Address) = nev

    Application.EnableEvents = True
    Application.ScreenUpdating = True
End Sub

Munka2(Kozep)
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim nev, lapnev$
    Application.EnableEvents = False
    Application.ScreenUpdating = False
    
    lapnev$ = ActiveSheet.Name
    nev = Target.Value
    If Not Intersect(Target, Range("Ter_2")) Is Nothing Then Torles nev, lapnev$
    Range(Target.Address) = nev

    Application.EnableEvents = True
    Application.ScreenUpdating = True
End Sub

Munka3(Felso)
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim nev, lapnev$
    Application.EnableEvents = False
    Application.ScreenUpdating = False
    
    lapnev$ = ActiveSheet.Name
    nev = Target.Value
    If Not Intersect(Target, Range("Ter_3")) Is Nothing Then Torles nev, lapnev$
    Range(Target.Address) = nev
    
    Application.EnableEvents = True
    Application.ScreenUpdating = True
End Sub

Module1
Sub Torles(nev, lapnev$)
    Dim CV As Object
    
    Sheets("Also").Activate
    For Each CV In Range("Ter_1")
            If CV.Value = nev Then Range(CV.Address) = ""
    Next
    
    Sheets("Kozep").Activate
    For Each CV In Range("Ter_2")
            If CV.Value = nev Then Range(CV.Address) = ""
    Next
    
    Sheets("Felso").Activate
    For Each CV In Range("Ter_3")
            If CV.Value = nev Then Range(CV.Address) = ""
    Next
    Sheets(lapnev$).Select

End Sub

Module2
Sub auto_open() 'Névadás
    ActiveWorkbook.Names.Add Name:="Ter_1", RefersToR1C1:= _
        "=Also!R8C1,Also!R13C1,Also!R15C1,Also!R20C1,Also!R22C1,Also!R27C1,Also!R29C1,Also!R34C1,Also!R36C1,Also!R41C1,Also!R43C1,Also!R8C6,Also!R20C6,Also!R22C6,Also!R27C6,Also!R29C6,Also!R34C6,Also!R36C6"
    
    ActiveWorkbook.Names.Add Name:="Ter_2", RefersToR1C1:= _
        "=Kozep!R8C1,Kozep!R10C1,Kozep!R12C1,Kozep!R17C1,Kozep!R22C1,Kozep!R24C1,Kozep!R29C1,Kozep!R31C1,Kozep!R36C1,Kozep!R38C1,Kozep!R43C1,Kozep!R17C6,Kozep!R22C6,Kozep!R24C6,Kozep!R29C6,Kozep!R31C6,Kozep!R36C6,Kozep!R38C6,Kozep!R43C6"
    
    ActiveWorkbook.Names.Add Name:="Ter_3", RefersToR1C1:= _
        "=Felso!R8C1,Felso!R10C1,Felso!R15C1,Felso!R17C1,Felso!R19C1,Felso!R24C1,Felso!R29C1,Felso!R31C1,Felso!R36C1,Felso!R41C1,Felso!R8C6,Felso!R10C6,Felso!R15C6,Felso!R17C6,Felso!R19C6,Felso!R24C6,Felso!R29C6,Felso!R36C6,Felso!R41C6"
End Sub


A Munka1(Also)-be szeretném Fferi50--töl kapott kódot

Konkrétabban: Ha A1 a lenyíló cellád és B1 a számított a Munka1 munkalapon akkor a munkalap kódlapjára ezt írd be:

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A1")) Is Nothing Then Exit Sub
Application.EnableEvents = False
If Not Range("B1").HasFormula Then Range("B1").Formula = "=today()-A1" ' ide természetesen a Te képleted kell írni.
Application.EnableEvents = True
End Sub

A Thisworkbook kódjába pedig ezt írd be:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Munka1.Range("B1").Value = Munka1.Range("B1").Value
End Sub

Így a munkafüzet minden becsukásakor fixálódik a B1 cella értéke, de amikor megváltoztatod a lenyílódat, akkor ismét visszakerül bele a képlet.

Előzmény: Delila10 (25683)
NeomatiK Creative Commons License 2014.08.20 0 0 25693

Köszi, letöltöttem.

 

Hasznos ez a cucc, de nem ilyenre gondoltam. Hanem egy olyanra, hogy ha pl egy henger térfogatát, felszínét, akarom kiszámolni, akkor elég legyen csak bepötyögni az átmérőjét és a magasságát. Azaz ne kelljen a függvényt nekem megírni hozzá.

Előzmény: Delila10 (25692)
Delila10 Creative Commons License 2014.08.20 0 0 25692

Mindegyik fájlban benne van az összes! :)

 

Egy kedves ismerősöm egyszer összegyűjtött egy halom függvényt példákkal egy füzetbe, privátban elküldtem.

 

Régen készült, a 2007-es verzió alatt, az újabbakat pótolnod kell.

Előzmény: NeomatiK (25691)
NeomatiK Creative Commons License 2014.08.19 0 0 25691

Sziasztok!

 

Tudtok olyan excel file-t ajánlani, amiben benne vannak az ismertebb egyenletek? Legyen az algebrai, mértani, fizikai, kémiai....

Delila10 Creative Commons License 2014.08.18 0 0 25690

Mit tudtok tbando-ról? Május óta nem jelentkezett.

exszajmon Creative Commons License 2014.08.18 0 0 25689

Szia Jimmy the Hand!

 

Sajnos csak most tudok válaszolni. Köszi jól működött a makrós-tömbképletes megoldásod. Esetleg van arra lehetőség, hogy vagy csak makróval vagy csak képletekkel van megírva a szövegkeresés?

 

Makró esetében pl.: két változóban (sor és oszlop) tárolná az eredményeket, ez azért lenne jó mert egy másik makróba lennének beillesztve vagy annak lenne ez a szövegkeresés a része.

 

Egyébként értékre kellene keresni, nincs képlet a cellában és nem szövegrészre, hanem a teljes szövegre. Nem tudom, hogy szükséges-e bármilyen egyéb info

 

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

 

 

ÜDv:

 

Szajmon

 

Előzmény: Törölt nick (25666)
Delila10 Creative Commons License 2014.08.17 0 0 25688

Nézz el ide: http://pcforum.hu/tudastar/114183/Excel+osszetett+fuggvenyek.html. A hsz. vége felé találsz választ.

 

A szóköz-, vagy metszet operátor használatához a beállítás:

2003-ban:  Beállítások | Számolás | Képletekben címkék is használhatók,

2007-ben:  Képletek | Definiált nevek

Előzmény: pavdaddi (25686)
Fferi50 Creative Commons License 2014.08.16 0 0 25687

Szia!

Idézet a HA függvény súgójából (2010 Excel).

"Összetett vizsgálatok esetén legfeljebb 64 HA függvényt ágyazhat egymásba érték_ha_igaz és érték_ha_hamis argumentum formájában."

 

Viszont a te esetedben én megfontolnám az index - hol.van függvények párosítását, ami sokkal egyszerűbb módon ad megoldást, erre találták ki. A hol.van függvénnyel megkeresed a sort és az oszlopot az INDEX pedig visszaadja az eredményt:

Index(táblázat;hol.van(A1; táblázat_első oszlop;0);hol.van(A2;táblázat_elsősor;0))

 

Üdv.

Előzmény: pavdaddi (25686)
pavdaddi Creative Commons License 2014.08.16 0 0 25686

Sziasztok.

MIlyen hosszúságú lehet egy függvény maximálisan, mennyi "ha" és egyéb kitételek szerepelhetnek egy cellának az érték meghatározásánál?

 

 kb miről is van szó? :

az egyik munkalapon van egy véletlen számsorom: pl A1:2, A2:6, A3:4, A4:7, A5:9, A6:9, A7:10, A8:12

a másik munkalapon egy táblázat van. a táblázat fejlécén rendre 1-12 ig vannak a számok, ugyanígy a sorok elején szintén 1-12 ig a számok.

a kereszteződési pontokban szintén értékek vannak.

 

az összes lehetőségre tehát ha Ha az 1. munalapon 2 után 6 jön akkor a 2. munkalap táblázatából a 2.sor 6. oszlop metszéspontjában található értéket írja ki, ha viszont a 2 után 12 jön akkor az ammak megfelelő értéket.

 

Egyáltalán sima függvény-kombóval ezt megtudom egyáltalán oldani?

Bendeke Creative Commons License 2014.08.16 0 0 25685

Sziasztok!

 

Nekem részben excel és postgresql gondom van.

Szeretném excelen keresztül csatlakozni a postgresql-hez, de nem igen megy.

Már jó pár leírást végig olvastam, de nekem valamiért ugyan az a hibajelenség.

 

az alábbi leírás alapján próbáltam magam megoldani:

http://office.microsoft.com/en-001/excel-help/connect-to-a-postgresql-database-HA104028095.aspx

 

Amiket végre hajtottam:

 

Felraktam a windows 8.1 prof 64 bites gépemre a postgesql-t.

http://www.enterprisedb.com/postgresql-9351-installers-win64?ls=Crossover&type=Crossover

 

 

Telepítés közben kiválasztottam hogy a Npqsql kiegészítést is rakja fel.

 

C:Program Files (x86)PostgreSQLNpgsql mappába fel is rakta a fájlokat.

 

Majd a gacutil.exe eléréshez letöltöttem és feltelepítettem a SDK-t (6.0.6001.18000.367-KRMSDK_EN.iso)

 

Majd adminisztrátorként parancssorban kiadtam az alábbi parancsokat:

 

"C:Program FilesMicrosoft SDKsWindowsv6.1Binx64gacutil.exe" /i "C:Program Files (x86)PostgreSQLNpgsqlms.net2.0Npgsql.dll"

"C:Program FilesMicrosoft SDKsWindowsv6.1Binx64gacutil.exe" /i "C:Program Files (x86)PostgreSQLNpgsqlms.net2.0Mono.Security.dll"

 

Majd a C:WindowsMicrosoft.NETFramework64v2.0.50727CONFIGmachine.config fájlt átszerkesztettem:

Az alábbiak alapján:

  1. Add a new entry to the machine.config file:
  1. Navigate to “C:WindowsMicrosoft.NETFrameworkv2.0.50727CONFIG” (or “C:WindowsMicrosoft.NETFramework64v2.0.50727CONFIG” if running 64 bit).
  2. Open the “machine.config” file with admin privileges.
  3. Look for a node called "DbProviderFactories".
  4. Add a new entry:

<add description=".Net Framework Data Provider for Postgresql Server" type="Npgsql.NpgsqlFactory, Npgsql, Version=2.0.12.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7" name="Npgsql Data Provider" invariant="Npgsql" support="FF"/>

 

 

Excelhez felraktam a Powerquery kiegészítőt.

Kiválasztom a Powerquery sávon az "Adatbázisból" ikont.

Ott a Postgresql-t választom ki.

Szerver: localhost

adatbázis: test

Ok után a következő panelen:

User: postgres

pswd: postgres user jelszava

Ok gomb megnyomása után előjövő új ablakon az alábbi hibaüzenet jelenik meg:

 

"DataSource.Error: PostgreSQL: Nem található „Npgsql” állandó nevű adatbázis-szolgáltató."

 

Valaki tudna segíteni, esetleg egy nagyon részletes szájba rágós leírásttudnátok adni, mit, honnan szedjek le, hova telepítsek, miket állítsak be?

 

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

 

 

 

 

hát ő Creative Commons License 2014.08.16 0 0 25684

Renben köszönöm. :)

Előzmény: Delila10 (25683)
Delila10 Creative Commons License 2014.08.16 0 0 25683

Ha majd kéznél lesz a füzeted, másold be ide a makrót, anélkül nem lehet megítélni a dolgot.

Előzmény: hát ő (25681)
Fferi50 Creative Commons License 2014.08.16 0 0 25682

Szia!

 

Ez annál egy kissé bonyolultabb. Nem tudom, hogy Delila melyik makrója fut és hova van betéve.

Ha a worksheet_change -ben van az is, akkor mindenképpen az End elé kell betenni, mert két ugyanolyan makró nem lehet.

De ebben szerintem Delila tud neked segíteni.

 

Üdv.

Előzmény: hát ő (25681)
hát ő Creative Commons License 2014.08.16 0 0 25681

Elfelejtettem valamit. Ahol szeretném futtatni az általad készített makrót ott már fut egy a Delia10 által készített makró. Egyszerűen csak írjam tovább az End rész után vagy új makróként rögzítsem. Most nem tudom kipróbálni mer nincs nálam az a munkafüzet.

Előzmény: Fferi50 (25678)
hát ő Creative Commons License 2014.08.16 0 0 25680

Tökéletes!!!! Mit is mondhatnék. Köszönöm.

Előzmény: Fferi50 (25678)
hát ő Creative Commons License 2014.08.15 0 0 25679

AAJJAJ. Balfék vagyok. A probléma azt hiszem hogy nem makróbarát fájlként mentettem el. Most működik. Meglátom holnapra hogy reagál de már most tudom ha te segítesz biztos jó lesz.

Nagyon szépen köszönöm.

Előzmény: Fferi50 (25678)
Fferi50 Creative Commons License 2014.08.15 0 0 25678

Ha megváltoztatod a lenyílót, akkor sem lesz belőle képlet? A Worksheet_change makrót a munkalap kódlapjára kell bemásolni, ott ahol a bal oldalon meglátod lenyílót a General és a Worksheet értékkel, válaszd a Worksheetet. A jobb oldali lenyílóból válaszd ki a Change-et. A megjelenő Private Sub - end sub közé másold be abból amit írtam a közte levőket.

 

Ha nem megy, tegyél fel lsz. egy mintát valahova és megnézem.

 

Üdv.

Előzmény: hát ő (25677)
hát ő Creative Commons License 2014.08.15 0 0 25677

Nagyon hálás vagyok a válaszodért.

De annyira amatőr vagyok:) Nálam nem működik. Azaz bemásoltam a kódokat kiválasztottam A1 ből egy értéket eddig minden jó bármely értékre hozza az eredményt. A probléma a munkfüzet bezárása és újranyitása után van: az előző számítás ott van de már nem tudom megváltoztatni másra.

Előzmény: Fferi50 (25676)
Fferi50 Creative Commons License 2014.08.15 0 0 25676

Szia!

 

Ezt elég bonyolultan lehet megoldani. Ha csak egy ilyened van, akkor a bezárás előtt a számított cellát alakítst át értékké és úgy mentsd el a munkafüzetet. Ezt a thisworkbook beforeclose eseménykezelésben tudod megtenni: második_cella.value=második_cella.value

 

Majd amikor megnyitod és átállítod a lenyílóban az értéket, akkor írd át képletre.

Ez utóbbit a worksheet_change eseményben tudod megtenni, kb. így. if not második_cella.hasformula then második_cella.formula="=ma()-lenyilócella"

 

Konkrétabban: Ha A1 a lenyíló cellád és B1 a számított a Munka1 munkalapon akkor a munkalap kódlapjára ezt írd be:

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A1")) Is Nothing Then Exit Sub
Application.EnableEvents = False
If Not Range("B1").HasFormula Then Range("B1").Formula = "=today()-A1" ' ide természetesen a Te képleted kell írni.
Application.EnableEvents = True
End Sub

 

A Thisworkbook kódjába pedig ezt írd be:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Munka1.Range("B1").Value = Munka1.Range("B1").Value
End Sub

Így a munkafüzet minden becsukásakor fixálódik a B1 cella értéke, de amikor megváltoztatod a lenyílódat, akkor ismét visszakerül bele a képlet.

 

Remélem sikerül.

 

Üdv.

Előzmény: hát ő (25675)
hát ő Creative Commons License 2014.08.15 0 0 25675

Sziasztok!

Segítséget kérnék.

Egy cella legördülö választó lista aminek a tartalma szám+betű (1 nap).

Egy másik cella tartama a ma fügvény - az előző cella tartalma.

A lényeg hogy a ma függvényből vonjon ki annyi napot amennyit az első cellában kijelölsz. Ez meg is valósul. De én azt szeretném hogy a következő nap a tegnapi érték maradjon. Tehát már ne a ma függvényből számoljon de ha változás történik az első cellában akkor újra a ma függvényből számoljon.

 

exszajmon Creative Commons License 2014.08.15 0 0 25674

Szia Fferi50,

 

köszi neked is a segítséget, sajnos csak később lesz időm kipróbálni, majd megírom hogy sikerült.

 

Üdv

Előzmény: Fferi50 (25672)
exszajmon Creative Commons License 2014.08.15 0 0 25673

Köszi a választ Jimmy the Hand,

 

megpróbálom elmondásod alapján összhozni, ha  nem sikerülne vagy kérdésem lenne még írok, hogy ne unatkozzatok:)

 

mégegyszer köszi

Előzmény: Törölt nick (25669)
Fferi50 Creative Commons License 2014.08.15 0 0 25672

Szia!

 

Nem mindegy, hogy a keresés a cella értékére, vagy a cellában szereplő képletre irányul. Nézd meg lsz. Ctrl+F után előjövő párbeszédpanel egyebek gomb megnyomása után láthatókat.

 

Üdv.

Előzmény: exszajmon (25671)
exszajmon Creative Commons License 2014.08.15 0 0 25671

Kedves Fferi50,

 

 

köszi az észrevételeket A 2. kérdésre az a válasz, hogy a teljes cella a tartalma a keresett szöveg.

Az első kérdést sajnos nem értem.

 

köszi

Előzmény: Fferi50 (25668)
Törölt nick Creative Commons License 2014.08.15 0 0 25670

Gondoltam, ezekre akkor térünk rá, ha nem tetszik az első megoldás. Meguntam folyton visszakérdezni a hiányzó információkra. (Már jó rég meguntam, ami azt illeti.)

Előzmény: Fferi50 (25668)
Törölt nick Creative Commons License 2014.08.15 0 0 25669

A makró és a képlet együtt megy. A kódot be kell másolni egy kódmodulra, utána megtalálod a függvényt a felhasználói függvények kategóriában.

Előzmény: exszajmon (25667)
Fferi50 Creative Commons License 2014.08.15 0 0 25668

Szia!

 

Két megjegyzés:

  1. Én beállítanám, hogy értékben keressen - vagy csinálnék egy paramétert rá, hogy képletben vagy értékben keressen, ami esetleg elhagyható, de akkor az érték legyen az alapértelmezett. Vagyis hozzátenném a lookin paramétert.
  2. A szövegről sem tudjuk, hogy az a teljes cella tartalma-e, vagy annak csak egy része. Ezért vagy "*" & Keresett_szöveg & "*" -ot keresnék és akkor jó a lookat:=xlwhole, vagy lookat:=xlpart és akkor megtalálja akkor is, ha nem a teljes cella tartalom egyezik.

Ez azért is fontos szerintem, mert a find megtartja azokat a korábbi keresési beállításokat, amin nem változtatunk

 

Igaz, a kérdező mindkét fenti kérdésről bölcsen hallgatott.

 

Üdv.

Előzmény: Törölt nick (25666)
exszajmon Creative Commons License 2014.08.15 0 0 25667

Köszi a gyors választ Jimmy the Hand,

 

egyelőre a képletet próbáltam csak, olyan képletet  viszont nem találtam hogy szövegkeresés csak olyat, hogy szöveg.keres, ami viszont nem ugyanaz szerintem.

 

 

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

Egy makrós-tömbképletes megoldás:

 

Function Szövegkeresés(Vizsgált_tartomány As Range, Keresett_szöveg As String)
    Dim Arr(1 To 2) As Long, Hit As Range
    
    Set Hit = Vizsgált_tartomány.Find(what:=Keresett_szöveg, lookat:=xlWhole)
    If Hit Is Nothing Then
        Arr(1) = -1
        Arr(2) = -1
    Else
        Arr(1) = Hit.Row
        Arr(2) = Hit.Column
    End If
    Szövegkeresés = Arr
End Function

Ha pl. a vizsgálat tartomány A1:H12, a keresett szöveg pedig L2-ben van, akkor

K3:L3 tartományt kijelölöd,

beírod képletnek, hogy =Szövegkeresés(A1:H12;L2)

és nyomsz egy CTRL+SHIFT+ENTER-t

K3-ba megy a sor, L3-ba az oszlop száma.

 

Előzmény: exszajmon (25665)
exszajmon Creative Commons License 2014.08.15 0 0 25665

Sziasztok!

 

Olyan problémám van, hogy szeretnék függvényekkel, jobb esetben makroval meghatározni egy táblában egy cella helyét, amiben szöveg van. Az oszlop és a sor számára lenne szükségem.

 

pl.: az excel szót írtuk a L23-as cellába, akkor nekem arra lenne szükségem, hogy a 12. oszlopban és a 23. sorban van, úgy hogy csak az excel szóra kereshetek rá, az alapján kellene meghatározni a helyét.

 

a hol.van függvényt sajnos csak egy oszlopra lehet használni tudtommal, táblázatban nem használható.

az oszlop és sor függvényekkel az a baj, hogy a cellára csak a sorral és osszloppal lehet hivatkozni pont amire szükségem van.

egyéb mátrix függvények sem jók.

Makrót sajnos annyira nem vágom, hogy ilyet írjak.

 

Van valakinek ötlete, hogyan lehet megoldani, a makro talán még jobb lenne, de a függvényes megoldás is érdekelne ha van.

köszi

homár hümér Creative Commons License 2014.08.15 0 0 25664

Irtad:

A sorok között viszont némi pökhendiség jön át, amit én viszonylag nehezen viselek el 

 

Bocsanat, nem volt szandekomban.

En amolyan mogorva tipus vagyok, aki nem sokat beszel, csak a vegeredmenyt mondja, mert ha megprobalom elmagyarazni a reszleteket, tul dagalyos leszek es felreertenek.

 

Most sajnos par napig van mit takaritani a haz korul, igy azzal leszek elfoglalva, utana irok egy tomor osszefoglalot.

 

Előzmény: Törölt nick (25662)
Sánta Kutya (SK) Creative Commons License 2014.08.15 0 0 25663

"Raadasul ugy kell megtenni, hogy majd adatbazisba lehessen attenni, amirol meg senki se tudja, hogyan fog kinezni, mert eloszor az adatokat kell rogziteni."

 

Szóval téglákat gyűjtesz egy épülethez, amiről azt se tudod, hogy fog kinézni. Felhúzol 1-2 falat, aztán jöhet a tervező?

Előzmény: homár hümér (25630)
Törölt nick Creative Commons License 2014.08.15 0 0 25662

"Azzal kezdtem, hogy nem ertek hozza, ezert kerek segitseget."

 

A sorok között viszont némi pökhendiség jön át, amit én viszonylag nehezen viselek el olyantól, aki szívességet két tőlem. Meglehet, nem volt ilyen szándékod, de a hatás ott van, és ez esetben kérdés, hogy mitől gyakorolsz ilyen hatást másokra.

 

"A  masik a penz volt, eleve azt felteteleztetek, hogy ez egy nagy penzt hozo buli."

 

Tévedés. Más kérdés, ha valami gigaprojektről van szó, amibe 80+ munkaórát bele kell tenni, ilyesmit nem szoktunk grátisz felajánlani, Feri is erre célozhatott. De alapvetően ezen a fórumon nem pénzért mérik a segítséget. Ami viszont nem jelenti azt, hogy ingyen van. A jó válasznak jó kérdés az ára. Értelmes, átgondolt, konkrét kérdés kell. Esetedben még 4 hozzászólás után sem derült ki, hogy milyen segítséget is vársz valójában.

Előzmény: homár hümér (25659)
Delila10 Creative Commons License 2014.08.14 0 0 25661

Igazad van. Évek óta segítenek a fórumon minden beesőnek ingyen, de azzal a reménnyel, hogy hátha előkerül egy hozzád hasonló, akit le lehet vágni.

 

Ne is foglalkozz ilyen pénzéhes pasikkal, oldd meg egyedül!

Előzmény: homár hümér (25659)
Fferi50 Creative Commons License 2014.08.14 0 0 25660

Szia!

 

Már "csak" azt kellene tudnunk, hogy milyen jellegű adatokat kell rögzítened. Mert ettől nagyban függ az adatbevitel hibamentesítésének lehetősége.

Legalább azt mond már el, hogy milyen papír alapon létező adathalmazról beszélsz (mert a választás az egy dolog, de ahhoz kapcsolódva sok-sok féle adat keletkezik): kérdőív, jegyzőkönyv,jegyzetek,feljegyzések stb, és mi azok tartalma szöveg, szám, papírdarabonként hány 10-100-1000 adat lesz.

 

Továbbá: Ha csak egy iskolai dolgozat lesz, akkor miért is izgat ennyire az adatbevitel pontossága? Nem lebecsülve a feladat fontosságát, de nem mindegy, hogy éppen 10 vagy 100 került be oda arra az adott helyre. Nyulat fognak vele lőni?

 

Üdv.   

Előzmény: homár hümér (25659)
homár hümér Creative Commons License 2014.08.14 0 0 25659

Irtad:

Nem érted. Az ellenséges hozzáállás kizárólag a stílusodnak szól, amivel menőnek próbálod meg eladni magad, holott minden második mondatodból kiderül, hogy nem értesz a témához, és nem tudsz jól kérdezni sem.

 

Ez mar onmagaban ellentmondas. 

Azzal kezdtem, hogy nem ertek hozza, ezert kerek segitseget.

Erre nekem estek, hogy "tanar vagy, megse tudsz semmit."

(Mert, ugye, egyedul a tanar az, aki azert kerdez, hogy a masik tudja-e a valaszt. Mindenki mas azert kerdez, mert valaszt szeretne kapni.)

 

A  masik a penz volt, eleve azt felteteleztetek, hogy ez egy nagy penzt hozo buli.

 

Egyikrol sincs szo.

Latom, hogy az adatrogzites nagyon egyszeruen megoldhato, de sok hibalehetoseget tartalmaz a kesobbi elemzeshez. Ezert kertem segitseget. 

Törölt nick Creative Commons License 2014.08.14 0 0 25658

"Ez reszben megoldhato."

 

Az kevés, részmegoldásnak itt nincs értelme. Ez mindent vagy mindent játék.

 

"En legszivesebben rogton adatbazisba rogzitenem az adatokat, igy kikuszobolhetoek az elgepelesekbol adodo hibak."

 

Független, egyedi adatok begépelésekor elkövetett hibákat semmilyen adatbázis adatbeviteli felülete nem szűri ki. Annyit tudhat esetleg, hogy egyes beírandó adatok listából választhatóak, és akkor nem áll fenn az elgépelés veszélye. Ezt viszont Excellel is meg lehet oldani.

 

"Na igen, mar ertem az ellenseges hozzaallasotokat."

 

 

Nem érted. Az ellenséges hozzáállás kizárólag a stílusodnak szól, amivel menőnek próbálod meg eladni magad, holott minden második mondatodból kiderül, hogy nem értesz a témához, és nem tudsz jól kérdezni sem.

 

De ajánlok egy alkut. Menj be egy autógumi szaküzletbe, és kérj 4 db gumit a nem létező autódhoz, aminek még a típusát, márkáját, meg semmijét nem tudod, csak azt, hogy a Dunán szeretnél vele eljutni Moszkvába. Majd valamikor. Aztán amikor az eladók értetlenül néznek, világosítsd fel őket, hogy ne bénázzanak itt, te olyan embert keresel, akinek van autógumiban tapasztalata. Ha sikerül ott ezek után autógumit venned, gyere vissza ide, és megígérem, hogy segítek megoldani a feladatodat, és nagyon-nagyon türelmes leszek.

 

"Ez egy diakdolgozat lesz es ev vegere vagy januar kozepere kell leadni"

 

Újabb érdekes csavar.

Iskolai feladatoknak az szokott lenni a lényege, hogy a nebuló megértse a dolgok működését. Ezek általában kamu adatokkal mennek, és a program vagy adatbázis vagy beképletezett táblázat logikai felépítésére kíváncsiak, nem a hatszázezer adat hibátlan begépelésére. Sőt, inkább rendelkezésre szoktak állni az adatok elektronikus formában. Kíváncsi lennék, melyik iskola az, ahol ilyen feladatokat adnak ki.

 

"Szenvedes annal tobb, mert be kell gepelni az adatokat, az lesz az en reszem.;)"

 

Ha csak az adatbeviteli hibák kiküszöbölése a célod, akkor olvasd el, amit az Excel súgó az adatérvényesítésről ír. (Vagy keress rá a gugliban.)

 

Egy korábbi hsz-odból:

"Annyi biztos, hogy minden idoponthoz es helyhez tartozo adatot kulon tablazatba kell rogziteni, ugyhogy tobb szaz tablat kell majd kezelni."

 

Az egyetlen biztos dolog is már egy rossz kiindulás. Mindent egy lapra kellene, ahol a hely is egy oszlop meg az idő is. Ezt nyugodtan továbbadhatod a barátaidnak, akik piszkos munkát lepasszolták neked.

Előzmény: homár hümér (25655)
Fferi50 Creative Commons License 2014.08.14 0 0 25657

Nos akkor a diák gondolom már kellőképpen felkészült informatikából és minden kérdésedre fog tudni válaszolni.

 

Egyébként ha papíralapról viszel be adatokat, ott is lehet ellenőrzést csinálni már a bevitelnél: Pl. kötegekbe fogod össze és a számokból csinálsz egy ellenőrző számot és a köteg végén begépeled. Ha egyezik, akkor nagyjából biztos lehetsz benne, hogy helyesen vitted be az adatot. Ellenőrző számot is többféleképpen lehet képezni, hogy minél inkább elkerülhető legyen az azonos jellegű hiba (pl. két számcsere, aminek következtében az összeg nem változik meg). A kötegek is lehetnek "elviselhető" nagyságúak, hogy ne többszáz adatban kelljen hibát keresni, hanem mondjuk 10-20-50 adat egyeztetésére legyen szükség.

Szerintem erre (mármint az adatbevitel ellenőrzési lehetőségeire) biztosan találsz több módszert is a neten.

 

Továbbá, ahogy írtam korábban, ha még nem lehet tudni, hogyan fog kinézni az adatbázis, az a kisebbik baj, mert a bevitt adatokat lehet kezelni excelben és adatbázis által "megehetővé tenni", ez "csupán" makrók kérdése - ahogyan Jimmy is írta korábban. De az adatoknak felismerhető formában kell az excelbe bekerülni - tehát minden adatról tudni kell és be kell vinni azokat a jellemzőket, ami alapján később csoportosítani, feldolgozni szeretnék majd.

 

Tehát a viszontkérdés: A munka melyik részében szeretnél segítséget??

 

Üdv.

Előzmény: homár hümér (25655)
Delila10 Creative Commons License 2014.08.14 0 0 25656

Ahogy ismerem Jimmyt, mosakodásnak venné, ha a 4. pontjához fűzött mondatodra válaszolna.

 

Méltatlannak találom a "mar ertem az ellenseges hozzaallasotokat" gondolatodat. Ha figyelmesebben olvasnál, a lényeget láttad volna meg: "ha van egy felhasználó, aki tökéletesen átlátja a feladatot és a célt, illetve van egy informatikus, aki ért az adatbázisokhoz, és ezek ketten jó alaposan átbeszélik az egészet, elejétől a végéig" . Ez a feltétele egy jó program megírásának.

 

Ilyeneket írtál a feladat meghatározásához:

"majd adatbazisba lehessen attenni, amirol meg senki se tudja, hogyan fog kinezni, mert eloszor az adatokat kell rogziteni."


Szerinted ilyen alapra lehet programot írni?

Előzmény: homár hümér (25655)
homár hümér Creative Commons License 2014.08.14 0 0 25655

Irtad:

2) Ha a majdan keletkezett adathalmazt relációs adatbázisként akarod használni, erősen ellenjavallt a különböző időpontok adatait külön munkalapokra rögzíteni. Mindent ugyanarra a munkalapra kell, és legyen egy külön oszlop az időpont.

 

Ez reszben megoldhato.

En legszivesebben rogton adatbazisba rogzitenem az adatokat, igy kikuszobolhetoek az elgepelesekbol adodo hibak.

 

 

irtad:

4) A speciális/egyedi célra épült adatbázisok akkor működnek jól, ha ..

 

Na igen, mar ertem az ellenseges hozzaallasotokat.

 

Ez egy diakdolgozat lesz es ev vegere vagy januar kozepere kell leadni, ugyhogy megnyugtathatok mindenkit, hogy nincs penz benne. Szenvedes annal tobb, mert be kell gepelni az adatokat, az lesz az en reszem.;)

 

Előzmény: Törölt nick (25632)
Delila10 Creative Commons License 2014.08.14 0 0 25654

Szívesen. :)

Előzmény: djmorphy (25653)
djmorphy Creative Commons License 2014.08.13 0 0 25653

Köszönöm 

Előzmény: Delila10 (25643)
Fferi50 Creative Commons License 2014.08.13 0 0 25652

Úgy értettem, ha egyszerre több cella eredményét is szeretné helyben módosítani, akkor az csak makróval megy. (Hiszen a képletet csak másik cellába lehet "normálisan" beírni, különben körkörös hivatkozás lenne.)

 

Bocs, ha félreérthető voltam.

Előzmény: Delila10 (25651)
Delila10 Creative Commons License 2014.08.13 0 0 25651

A KISBETŰ függvényt több verzióban megnéztem, semmi gond vele a füzetben.

 

Neomatik is ezzel dolgozott (25646 hsz).

Előzmény: Fferi50 (25650)
Fferi50 Creative Commons License 2014.08.13 0 0 25650

Szia!

 

Hát ez már csak ízlés dolga....Mármint, hogy akarok-e előbb kijelölni és utána makrót indítani, vagy egyből mehet mindenre. A lényeg, hogy van többféle függvény is rá és csak makróval működik.

 

Üdv.

Előzmény: Delila10 (25649)
Delila10 Creative Commons License 2014.08.13 0 0 25649

Míg rajzoltam a kalligrafikus karaktereket, megelőztél. Igaz, más felfogásban.

 

A lapon az összes adatot írod át, míg én csak a kijelölt területen módosítok.

Előzmény: Fferi50 (25647)
Delila10 Creative Commons License 2014.08.13 0 0 25648

Éppen tehetsz ki gombot hozzá, ha beviszed ezt rövid kis makrót.

Kijelölöd az akár nem összefüggő, átalakítani kívánt területet, és indítod a makrót.

 

Sub kibetu()
     Dim cv As Range
     For Each cv In Selection
          cv = LCase(cv)
     Next
End Sub

Előzmény: NeomatiK (25646)
Fferi50 Creative Commons License 2014.08.13 0 0 25647

Szia!

 

Sub cserel()
Dim cl As Range
For Each cl In ActiveSheet.UsedRange.Cells
    If Not cl.HasFormula Then
        cl.Value = StrConv(cl.Value, vbLowerCase)
    End If
Next
End Sub

 

Minden olyan cellában, ahol nincs képlet, a cella tartalmát kisbetűsre cseréli.

 

Üdv.

Előzmény: NeomatiK (25644)
NeomatiK Creative Commons License 2014.08.13 0 0 25646

Köszi, így csináltam. Azt giondoltam, van hozzá "gomb", de akkor ezek szerint nincs?

Előzmény: Delila10 (25645)
Delila10 Creative Commons License 2014.08.13 0 0 25645

=kisbetű(a1)

 

A képletet lemásolod, majd a képleteket tartalmazó cellákat irányítottan, értékként beilleszted az eredeti cellákra.  

Előzmény: NeomatiK (25644)
NeomatiK Creative Commons License 2014.08.13 0 0 25644

Igen. de ettől függetlenül nekem jobban tetszik a régi felülelet. Szeretem a letisztult dolgokat.

 

 

 

 

Abban kérek segítséghet, hogyan lehet a cellában az összes nagybetűt kicsire cserélni?

Sok celláról van szó. Lehetőleg ne kelljen bepötyögni kézzel a cserélendő betűket a "csere" ablakba.

 

Előzmény: Fferi50 (25641)
Delila10 Creative Commons License 2014.08.11 0 0 25643

A Fejlesztőeszközök | Vezérlők | Beszúrás-nál az Űrlap-vezérlőelemek közül tedd ki a Beviteli listát. Cellacsatolás nálam az X1. Ha ez nem jó, akkor a makróban írd át. A címsor miatt szerepel a makróban a sor meghatározásánál +1. Ha nincs címsorod, radírozd ki a +1-et.

 

A makró:

 

Sub Masol()
   Dim sor As Long
   sor = Range("X1") + 1


   Range("A" & sor & ":F" & sor).Copy Workbooks("Megérkezett.xlsx") _
         .Sheets("Megjött Mf").Range("A105")
End Sub

 

Nálam az A:F tartományban vannak az adatok, írd át a makróban ezt a két betűt a saját tartományodra. A legördülőhöz rendeld hozzá a Masol makrót.

A tétel kiválasztásakor automatikusan átmásolja a kiválasztott sor adatait a másik füzet A105 cellájától kezdve.

Előzmény: djmorphy (25642)
djmorphy Creative Commons License 2014.08.11 0 0 25642

Sziasztok!

Segítséget kérnék az ügyben, hogy egyáltalán meg lehet valósítani a következőt és ha igen akkor milyen irányba keresgéljek(pl kulcsszavak).

Van egy excel amivel menedzselem a megrendeléstől a megérkezésig az árút. Azt szeretném megvalósítani, hogy ha az adott sornál pl Rendelés.xslx Folyamatban mf BJ117-nél egy drop down listből kiválasztom, hogy megjött mozgassa át egy másik excel-be(ami a kollégámé) pl Megérkezett.xlsx Megjött Mf A105. De akár lehet tükörképe is egymásnak a munkafüzet. Azaz első xslx-ben BJ117 akkor a második xlsx-ben is a 117 sorba írja be a szükséges oszlopokat ami a név mennyiség érkezés dátuma.

 

Amik eszembe jutottak:

Segítséget kérek tőletek :D

Ami nagyon valószínű hogy szerintem ezt makro-val lehet. Sajnos nem értek hozzá és nem is tudom hogy mint kezeli az adatátviteleket.

Másik ötletem az a csv-s export/import. Mert könnyű hálózaton kezelni.

Megosztott munkafüzet

Kimutatás készítés

 

Ha meg lehet ezt excellel valósítani ti melyik irányba indulnátok?

Fferi50 Creative Commons License 2014.08.10 0 0 25641

"Meg a 2002-esnél több sor fér el a képernyőn."

Mihez képest?  Mert a 2007-es szalagja "felcsukható", és akkor máris több a megjeleníthető sor, de a sormagasság is állítható. Arról nem is beszélve, hogy kicsinyíthetsz is.... (jó ez úgy emlékszem a 2002-ben is müxik).

Előzmény: NeomatiK (25640)
NeomatiK Creative Commons License 2014.08.10 0 0 25640

Nem tudom miért. Ez van a gépen, meg a 2007-es, de annak már a szalgos menürendszere van. Egyszerűbb dolgokhoz a 2002-est használom. Meg a 2002-esnél több sor fér el a képernyőn.

Előzmény: Fferi50 (25639)
Fferi50 Creative Commons License 2014.08.09 0 0 25639

Ha nem lehet megállapítani, hogy hol volt a csonkolás, akkor szerintem az a megoldás, amit írtál.

Más: miért 2002-es excel? Annál azért már kicsit odébb vagyunk, már az én 2010-esem is kezd "elavulni".

 

Üdv.

Előzmény: NeomatiK (25638)
NeomatiK Creative Commons License 2014.08.09 0 0 25638

Egyelőre nincsenek makrók. De akkro maradok ennél az egyveleg megoldásnál.

Még jó, hogy azért figyelmeztet a csonkolásra az excel.

 

Viszont egy nagy táblázat esetén - ahol nem egyértelmű, hogy hol lehet csonkolás, vagy mert nem akarok keresgélni - mi lehet a megoldás? Jelöljem ki az egész tartományt az eredetinél és írjam felül a az új lapon a csonkoltat is tartalmazó tartományt?

Előzmény: Fferi50 (25637)
Fferi50 Creative Commons License 2014.08.09 0 0 25637

Szia!

 

A munkalaphoz tartozó kódok(makrók, eseménykezelés) biztosan nem mennek át ezzel a másolással.

Mi van akkor, ha előbb munkalapot másolsz - persze a csonkolással -, aztán a kritikus cellát szépen odamásolod az új munkalapra - feltéve, hogy akkor nem kiabál már.

 

Üdv.

Előzmény: NeomatiK (25636)
NeomatiK Creative Commons License 2014.08.09 0 0 25636

Helló!

 

A munkalapot másoltam volna munkafüzeten belül a "végére".  Eközben azt az üzenetet írta az excel, hogy 255 karakternél több van egy cellában, ezért azt ő megcsonkolja. Excel 2002 a szoftver.

Nem lehet ezt valahogy kicselezni?

 

Ha ezt a cellát másolom egy új munkalapra, akkor átmásolja csonkolás nélkül. Sőt rábökve a bal felső "cellára", azaz kijelölve a munkalap tartalmát és másolva egy új munkalapra, akkor sem csonkolja meg.

Ilyen másolás esetén elveszhet valami adat vagy formázás, a fülön végzett másolással összevetve; persze nem számítva bele a csonkolást?

Fferi50 Creative Commons License 2014.08.08 0 0 25635

Nézd, azt ajánlom, hagyd / bízd ezt az egészet profi szervezőkre/informatikusokra! Nem hiszem, hogy ez "egyemberes" munka.

Arról nem is beszélve, hogy talán még személyiségi jogokat is sérthet....

Én biztosan nem vágnék bele egy ilyenbe egyedül, de talán még egy-két segítséggel sem.

 

Üdv.

Előzmény: homár hümér (25634)
homár hümér Creative Commons License 2014.08.08 0 0 25634

Ugy tunik, csak nekem volt egyertelmuek a kerdeseim.;)

 

Akkor menjunk sorban.

 

1. Volt "szerencsem" ugy tiz evvel ezelott hasonlo munkahoz. Excel 95-be kellett adatokat begepelni, majd parszor modosittattak, kinyomtattak, ket emberke keresztbe-hosszaba osszepipalta az adatokat. Azutan azt mondtak, minden rendben, mehet Acces 97-be.

Nem ment, csak a szoveges adatok voltak hibatlanok, a datumokkal allando, a szamokkal veletlenszeru gondok voltak. A datumokat ujra be kellett gepelni, majd jottek a hibakeresesek, ezuttal access es excel rekordok kozott, melyik szam nem stimmel.

Most meg mysql vagy hasonlo lesz a cel, amit meg nem is lattam.

 

2. Azert nem tudjak meg a vegleges strukturat, mert minden valtozott. Hosszu idosort kell rogziteni. Az eleje egyszeru, adott telepulesnek van x valasztokorzete, adottak a partok es a jeloltek.

Azutan a jeloltek elkezdenek partokat valtogatni, tehat a part/szemely szimpatia elemzes problemas, plane, ha oda-vissza tortenik bizonyos szemelyek reszerol a mozgas.

Azutan jonnek a partokhoz kozel allo szervezetek, valamint a "fuggetlen, de bizonyos part tamogatja" tipusu nevezesek. ezeket kulon kodolni, de kozben osszekapcsolni mas parttal vagy jelolttel megint erdekes lesz.

Majd megvaltoznak a szavazokorzetek, annyira, hogy tobb telepulest is osszevonnak.

Nem lehet tobbe egy korabbi telepulesre vonatkoztatni az adatokat. Valtoznak jarasi, megyei keretek, korzetek. Falvakbol varosok lesznek, es viszont.

Jon az ujabb valtozas, nemcsak a jeloltek szama, hanem a helyek szama is valtozik.

 

Amennyit hallottam, jelenleg azon megy a vita, hogy szakaszonkent legyenek kulonbozo adatbazisok, es a szakaszhatarokat akarjak megtalalni.

Annyi biztos, hogy minden idoponthoz es helyhez tartozo adatot kulon tablazatba kell rogziteni, ugyhogy tobb szaz tablat kell majd kezelni.

 

3. Az elobbiek alapjan megint attol tartok, hogy nagyon szep, hogy ha van egy adat, akkor azt elektronikusan lehet kezelni, meg atadni, de biztos vagyok abban, hogy elotte jo parszor ki lesz nyomtatva es osszepipalva. 

 

4. Szoval es tettel, ne vegye senki magara, nem vitatkozni jottem, csak tanacsot kerni, hogyan lehetne minel kevesebb idegeskedessel meguszni, mert azt lattam, hogy meg azonos ceg programjai kozott se volt jo az adatatvitel, pedig ugye ...

 

Fferi50 Creative Commons License 2014.08.08 0 0 25633

Még valami:

Ha mindezt azért kérdezed, mert meg szeretnél csináltatni vele/velünk valamilyen feladatot, akkor légy szíves ezt világosan megírni.

Biztosan lenne rá vállalkozó megfelelő ellentételezés esetén.

 

Üdv.

Előzmény: homár hümér (25630)
Törölt nick Creative Commons License 2014.08.08 0 0 25632

"Ezert kerdeztem, van-e valakinek gyakorlata ilyen teren."

 

Hát, ha ez a kérdés, akkor igen egyszerű a válasz: van.

Ennyivel akár el is intézhetnénk, hiszen megválaszoltam a kérdésedet, de lásd kivel van dolgod, mondok még egy-két dolgot.

1) Értelmetlen kérdésre ne várj értelmes választ. (Bővebb információért olvasd el a topik fejlécében belinkelt ajánlott irodalmat.)

2) Ha a majdan keletkezett adathalmazt relációs adatbázisként akarod használni, erősen ellenjavallt a különböző időpontok adatait külön munkalapokra rögzíteni. Mindent ugyanarra a munkalapra kell, és legyen egy külön oszlop az időpont.

3) Ha már egyszer rögzítve vannak az adatok, azokat a később kitalálandó adatbázis adatszerkezetének megfelelően átcsoportosítani valószínűleg ujjgyakorlat lesz csupán. (Pár soros makró.)

4) A speciális/egyedi célra épült adatbázisok akkor működnek jól, ha van egy felhasználó, aki tökéletesen átlátja a feladatot és a célt, illetve van egy informatikus, aki ért az adatbázisokhoz, és ezek ketten jó alaposan átbeszélik az egészet, elejétől a végéig. Amennyiben a kérdésed az őszi önkormányzati választásokhoz kapcsolódik, még bőven van idő egy informatikus keresni. Szerintem ezzel kellene kezdeni, nem az adatrögzítéssel.

Előzmény: homár hümér (25630)
Fferi50 Creative Commons License 2014.08.08 0 0 25631

Szia!

 

Már ne haragudj, de szerintem azzal, hogy nem tudom milyen adatok lesznek - csak azt, hogy sok és változó (sajnos az adatok természete egyébként már csak ilyen) - nem sok mindent lehet kezdeni.

Talán próbáld meg magad megtervezni az adatokat - esetleg mégis rábírni a későbbi adatbázist tervezőket, hogy méltóztassanak megmondani, milyen adatokra lesz szükségük, mert amit egyszeri és megismételhetetlen adatfelvételkor nem veszel fel, azt hiába is akarják később adatbázisba betenni....

Erre van egy legenda -nagyon rég történt, amikor bevezették az MNB-be a számítógépes rendszert - megkérdezték  az MNB akkori elnökét, hogy milyen adatokat kér, akkor azt válaszolta "mindent". Az amerikai tanácsadók - mert Honeywell számítógépeket vettek, elég nagyokat - azt modták erre: mindent azt nem lehet, csak konkrét adatokat lehet kérni a géptől.

 

Nehogy Te is így járj. Felveszel egy jó csomó információt Excelbe, aztán kiderül, hogy fele nem kell, de legalább ugyanannyit hiányolnak majd - ja, mert közben eszünkbe jutott, hogy ez is jó lenne még, meg az is jó lenne még....

 

Egyébként az a véleményem, ha az excellel "megetted" az adatokat egyszer, akkor onnan már be lehet vinni adatbázisba (is akár), legfeljebb némi munkába (sokba-kevésbe) kerül az adatbázis rekordok összeállítása a kívánt szerkezet szerint.

De ami ott van az Excelben, az kivehető belőle, ami meg nincs benne - nos azt sajnos nem tudod kivenni belőle.

 

Nyilván nagyon jó lenne, ha az adatok felvételekor tudni lehetne az adatbázis szerkezetét, mert akkor már most "rekordként" vehetnéd fel az egyes sorokat, de mint korábban írtam, ez nem szükségszerű, csak munkát lehet vele megtakarítani.

 

Egy kis off: megvan az egyéni véleményem arról, aki úgy gondolja, hogy az adatbázisát majd az adatok rögzítése után "találja ki"!

 

Ha valami közelebbi információd keletkezik, valamennyien szívesen segítünk, de amíg "négereket látunk egy sötét alagútban a kivilágítatlan vonat előtt vagy után???" , addig elméletieskedésnél sokkal többen ne nagyon várj.

 

Üdv.

Előzmény: homár hümér (25630)
homár hümér Creative Commons License 2014.08.08 0 0 25630

Igen, mint ahogy minden gyerek hordozhato, mert van fule. :-)

 

Tablazatba olyan adatokat jo bevinni, amelyek ismetlodnek.

Ennel azonban minden valtozik.

Idopontonkent uj munkalapra kell rogziteni az adatokat, ami mar maceras.

Raadasul ugy kell megtenni, hogy majd adatbazisba lehessen attenni, amirol meg senki se tudja, hogyan fog kinezni, mert eloszor az adatokat kell rogziteni.

Nem akarok feleslegesen napokat tolteni adatrogzitessel, hogy kesobb az egeszet ujra kelljen kezdeni.

Ezert kerdeztem, van-e valakinek gyakorlata ilyen teren.

 

Előzmény: Fferi50 (25626)
Fferi50 Creative Commons License 2014.08.08 0 0 25629

Szia!

 

A Most() azok közé a függvények közé tartozik, amelyek folyamatosan frissülnek. Ha napon belül állandónak szeretnéd látni az értéket, akkor használd a Ma() függvényt - természetesen ez is változik, mindig az aktuális napi dátumot mutatja.

Ha rögzítani akarod az adott értéket, akkor másolás - irányított beillesztés - értéket ugyanazon a cellán végrehajtva.

 

Üdv.

Előzmény: Norbrider (25627)
Oxaliplatin Creative Commons License 2014.08.08 0 0 25628

Szia!

 

Köszönöm a választ!

 

üdv

Előzmény: Fferi50 (25625)
Norbrider Creative Commons License 2014.08.08 0 0 25627

 

Sziasztok!


Segitsegre lenne szuksegem, gondolom nem meglepö :)


A gondom a következo. Egy olyan függveny vagy keplet kellene amibe ha beirok egy elöre megadott nevet , a mellette levö cella kiirja az aktualis idot. Kiserleteztem es jol haladtam amig ra nem jottem hogy a ha függvenybe nem birom beepiteni az aktualis ido parancsot:


=HA(K12="Hedvig";"ide kellene az aktualis idö";"szabadnapos")


Ez azt jelenti hogy ha a K12 be Hedvig van akkor itt az L12 a MOST parancs alapjan kiirja ugye az idöt,, de nem ez törtenik ,hanem akkor annyit ir ki hogy MOST... A szabadnapost meg ugye akkor irja ki ha a cella üres.
Tuti van valami trükkje de nem jövök ra...
(Win 8.1/Office 365)

 

Szia!

 

A MOST() függvényt ebben az alakban kell beírni

Tehát:

=HA(K12="Hedvig";MOST();"szabadnapos")

 

Üdv.

Előzmény: Norbrider (25617)
Norbrider 2014.08.07 22:41:31 ©    25617

 

 

 

Van megoldas arra hogy a most parancs Statikussa valjon? Vagy esetleg masik parancs kell?

Előzmény: Fferi50 (25618)
Fferi50 Creative Commons License 2014.08.08 0 0 25626

Szia!

 

Az Excelben számtalan lehetőség van az adatok elemzésére: Kimutatások, kimutatás diagramok, listák, adatbázis(AB)függvények stb.

 

Üdv.

Előzmény: homár hümér (25623)
Fferi50 Creative Commons License 2014.08.08 0 0 25625

Szia!

 

Most akkor vagy én értettem rosszul a feladatot, vagy ez már egy másik feladat.

Az első kérdésed az volt, ha beírsz egy értéket a Ketteske adott cellájába, azt írja be az Egyeske egy meghatározott tartományába.

Erre adtam egy javaslatot.

De amit most írsz azt nem egészen értem.

Ha a G1 cellában levő értéket tartomány címként akarod használni, akkor az indirekt függvényt kell alkalmazni: indirekt(G1) azt a tartományt jelenti, amelyiknek a címét a G1 cellába írtad.

 

Üdv.

Előzmény: Oxaliplatin (25622)
Norbrider Creative Commons License 2014.08.08 0 0 25624

Köszönöm!!! :D

Előzmény: Fferi50 (25618)
homár hümér Creative Commons License 2014.08.08 0 0 25623

Udvozlet Mindenkinek!

 

Uj tagkent nemreg regisztraltam csak azert, hogy most mar kerdezzek is.

Egy specialis feladatot kaptam, helyi valasztasi adatokat kell rogziteni es kesobb elemezni. Az adatokat excellbe kell begepelni, de adatbaziskent kell majd kezelni.

 

Van valakinek gyakorlata, tapasztalata ilyen feladatban?

Oxaliplatin Creative Commons License 2014.08.08 0 0 25622

Próbáltam úgy megadni ezt, hogy egyik D1 cellába beírtam az 1-est, E1 cellába a 31-et. D2 cellába 32, E2 cellába 62. Így végig húztam és tök jól kihozta a sorozatot. F1 cellába beírtam egy A betűt és az összefűz függvénnyel összehoztam az A1:A31-et, ezután végig húztam A5891:A5921 -ig, majd másolás majd ugyanott irányított beillesztés értéket. Na és itt vagyok gondban, hogy ebben a G1 cellában meg az A1:A31 és ezt beleapplikálni úgy egy függvénybe, hogy ne G1-ként ismerje fel hanem A1:A31-ként.

Köszönöm a segítséget, ha van erre valami függvény

Előzmény: Oxaliplatin (25621)
Oxaliplatin Creative Commons License 2014.08.08 0 0 25621

Szia!

 

Köszönöm szépen. Erre esetleg nincs valami automatizmus? pl bemásolok Ketteskébe 15 autót típust és akkor az Egyeskében folytatólagosan azonnal meg is jelenne.

Időközben  felvetődött még egy dolog: Ha ezekkel az A1:A31 illetve A32:A62 cellákat végig húzom, akkor ne az jelenjen meg az A63-as cellában, hogy A33:A63 a A63:A93 helyett.

Köszönöm

Előzmény: Fferi50 (25620)
Fferi50 Creative Commons License 2014.08.08 0 0 25620

Szia!

 

Ha csak ennyi a feladat, akkor a következőt lehet tenni:

 

Egyeske A1 cellájába beírod képletként: =Ketteske!$B$2  és ezt a képletet végighúzod az A31 celláig.

Ezután az A32 cellában a képlet a következő: =Ketteske!$B$3 és ezt végighúzod az A62 celláig.

A folytatás gondolom nem okoz problémát.

 

Üdv.

Előzmény: Oxaliplatin (25619)
Oxaliplatin Creative Commons License 2014.08.08 0 0 25619

Sziasztok!

 

Szeretnék egy kis segítséget kérni.

Adott egy tábla két munkalappal (Egyeske, Ketteske). Egyeskében vannak az autók típusai illetve mellette, egy oszlop amiben fel vannak sorolva a hónap napjai és emellett van még, hogy ki vitte ki az autót, mi volt a célja, mikor stb... Ketteskében pedig vannak az autók egyéb adatai. Azt szeretném megcsinálni, hogy Ketteskében elég legyen egyszer felvinni az autók típusát mondjuk a B2 cellában és ez az autó típus jelenjen meg Egyeskében az A1:A31 cellákban. Majd a következő autó típus a Ketteske B3 cellában írva, jelenjen meg Egyeske A32:A62 celláiban és így tovább.

 

A segítséget előre is köszönöm!

Fferi50 Creative Commons License 2014.08.07 0 0 25618

Szia!

 

A MOST() függvényt ebben az alakban kell beírni

Tehát:

=HA(K12="Hedvig";MOST();"szabadnapos")

 

Üdv.

Előzmény: Norbrider (25617)
Norbrider Creative Commons License 2014.08.07 0 0 25617

Sziasztok!


Segitsegre lenne szuksegem, gondolom nem meglepö :)


A gondom a következo. Egy olyan függveny vagy keplet kellene amibe ha beirok egy elöre megadott nevet , a mellette levö cella kiirja az aktualis idot. Kiserleteztem es jol haladtam amig ra nem jottem hogy a ha függvenybe nem birom beepiteni az aktualis ido parancsot:


=HA(K12="Hedvig";"ide kellene az aktualis idö";"szabadnapos")


Ez azt jelenti hogy ha a K12 be Hedvig van akkor itt az L12 a MOST parancs alapjan kiirja ugye az idöt,, de nem ez törtenik ,hanem akkor annyit ir ki hogy MOST... A szabadnapost meg ugye akkor irja ki ha a cella üres.
Tuti van valami trükkje de nem jövök ra...
(Win 8.1/Office 365)

 

Köszi elöre is!

Delila10 Creative Commons License 2014.08.07 0 0 25616
Előzmény: Törölt nick (25615)
Törölt nick Creative Commons License 2014.08.07 0 0 25615

Mindenki nyaralni ment? Ilyen esőben?

Delila10 Creative Commons License 2014.08.04 0 0 25614

OK. Levél ment.

Előzmény: TNorbi79 (25613)
TNorbi79 Creative Commons License 2014.08.04 0 0 25613

Mostmár publikus

Előzmény: Delila10 (25612)
Delila10 Creative Commons License 2014.08.04 0 0 25612

Nem tudok levelet küldeni, nem publikus a címed.

Előzmény: TNorbi79 (25610)
Delila10 Creative Commons License 2014.08.04 0 0 25611

Néhány dolgot bevittem, módosítottam a füzetedben. Utána rájöttem, hogy egészen máshogy kellene elkezdeni.

Privátban megadom a címem, ott megbeszéljük.

 

Addig a módosított fájl 

http://data.hu/get/7935157/Igenyles.xlsm

Előzmény: TNorbi79 (25610)
TNorbi79 Creative Commons License 2014.08.03 0 0 25610

Feltöltöttem, hogy hogyan szeretném megoldani az egészet.

Ezeknek a megvalósításához szeretném kérni a segítségedet ha időd engedi.

 

Köszönöm

 

https://www.dropbox.com/s/z0mw94vcsl7y5m5/Ig%C3%A9nyl%C3%A9s.xlsm

 

Előzmény: Delila10 (25607)
Delila10 Creative Commons License 2014.08.02 0 0 25609

Szívesen.

Összejött az OO Calc-ban?

Előzmény: djuice (25608)
djuice Creative Commons License 2014.08.01 0 0 25608

Köszönöm szépen!

Előzmény: Delila10 (25605)
Delila10 Creative Commons License 2014.08.01 0 0 25607

Szívesen segítek, ha tudok.

Előzmény: TNorbi79 (25606)
TNorbi79 Creative Commons License 2014.07.31 0 0 25606

Köszi a segítséget.

Valószínűleg még el fogok akadni néhányszor eléggé kezdő vagyok excelben, kereshetlek ilyen ügyben?

Előzmény: Delila10 (25599)
Delila10 Creative Commons License 2014.07.31 0 0 25605

Azt nem tudom, hogy OO Calc-nál hogy működik.

 

Excelben behívod pl. Alt+F11-gyel a VB szerkesztőt. Bal oldalon kiválasztod a füzetedet, Insert menü, Module. Jobb oldalon kapsz egy nagy üres felületet, oda kell bemásolni a makrót, amit a 25592-es hsz-ben Neked írtam.

 

Ott az alkalmazását is leírtam. A sok # akkor jelenne meg a HA függvénybe ágyazás nélkül, mikor üres cellára hivatkozol az Idok függvénnyel.

Előzmény: djuice (25600)
CérnaSzáll Creative Commons License 2014.07.31 0 0 25604

köszönöm szépen a segítséget, teljes siker :)

Előzmény: Fferi50 (25590)
Fferi50 Creative Commons License 2014.07.31 0 0 25603

Szia!

 

Miért lenne hülyeség?

A munkalapnak van egy xlveryhidden tulajdonsága, amit ha bekapcsolsz, akkor "mezei" felhasználó nem láthatja és a listákban sem szerepel (pl. a jobb egérgomb a munkalap nevére listában sem).

 

Tehát, ha tudod, hogy ki lépett be, akkor a hozzá tartozó munkalapot láthatóvá teszed, a többit pedig xlveryhidden-né, ezt nyilván a munkafüzet open eseményéhez kell rendelni.

 

Üdv.

 

 

Előzmény: Engrave (25601)
Engrave Creative Commons License 2014.07.31 0 0 25602

Áhh, hülyeség az egész! Bocs.

Előzmény: Engrave (25601)
Engrave Creative Commons License 2014.07.31 0 0 25601

Sziasztok

 

Olyat lehet csinálni excelben, hogy közös használatú a file, sok-sok füllel, de adott ember csak a saját fülében tud szerkeszteni, a másikét nem láthatja? Lehet hogy hülyeség az egész, de azért csak megkérdezem.

djuice Creative Commons License 2014.07.31 0 0 25600

Köszi!

Sztem a kolléga TNorbinak válaszolt nem nekem ezért nem is néztem azt a választ...

Hát az van hogy ha üres cella van az oszlopban akkor az ugye nullának számít és így rossz időkülönbséget számolna. Azaz addig kellene ciklus szerűen visszalépni még nem talál nem üres cellát így valószínűbb az említett makros megoldás de azt se tudom olyan hol van az excelben, ill igazából OO Calcban, sose használtam.

 

Előzmény: Törölt nick (25596)
Delila10 Creative Commons License 2014.07.31 0 0 25599

A Másolás eseményében az

If usor < 20 Then sorban a 20 helyett írj 22-t a 20 tétel másolásához, vagy 21-et, ha a címsorral együtt lehet 20 sor a 2. lapon.

Előzmény: TNorbi79 (25597)
Delila10 Creative Commons License 2014.07.31 0 0 25598
Előzmény: TNorbi79 (25597)
TNorbi79 Creative Commons License 2014.07.31 0 0 25597

Szuper vagy, köszi :)

2007-es Ecxelt használok. Törlésnél arra gondoltam, hogy amikor megnyomom akkor az utolsó bemásolt sortól kezdve minden megnyomásra töröljön vissza egy sort.

Előzmény: Delila10 (25594)
Törölt nick Creative Commons License 2014.07.30 0 0 25596

Nem is kell nagyon érten, hiszen Delila küldött egy magoldást alább, csak használni kell.

De ha a makró nem tetszik, itt egy képletes (figyelem, tömbképlet!):

 

{=A2-OFSZET($A$1;NAGY(((($A1:A$2)>0)*SOR($A1:A$2));1)-1;0;1;1)}

 

Ehhez feltételeztem, hogy az A2-ben indul a számsor. A 2. sorban akármelyik oszlopba beírhatod.

Az mondjuk nem volt világos, hogy amelyik sorban nincs érték, ott mit kell csinálni.  

Előzmény: djuice (25595)
djuice Creative Commons License 2014.07.30 0 0 25595

Na ahhoz meg igazán nem értek. Akkor megoldom furmányosabban hogy ne legyenek köztes üres cellák.

Előzmény: Fferi50 (25591)
Delila10 Creative Commons License 2014.07.30 0 0 25594

Feltettem egy nagyon mókuska megoldást, de csak a másolásra. 2003-as verzió, mert nem írtad, milyen Excelt használsz.

 

http://data.hu/get/7922383/Valami.xls

 

A törlés nem tiszta nekem. A gomb megnyomására törölje az alsó sort, bármi legyen benne, vagy ha többször másoltál 1-1 sort, akkor azok közül az utolsót törölje?

 

Előzmény: TNorbi79 (25593)
TNorbi79 Creative Commons License 2014.07.30 0 0 25593

Sziasztok,

Segítséget szeretnék kérni, egy userform-ban van egy combobox, megadtam a tartományt ami 8 oszlopot foglal magába. Azt szeretném megoldani, hogy ha kijelölök egy sort és mondjuk lenyomok egy parancsgombot akkor mind a 8 oszlop celláiban található értéket beszúrja egy másik munkalapon lévő sorba. Így egymás után max 20 sor feltöltését szeretném. Valamint egy másik parancsgombbal (Törlés) törölni lehessen visszafelé a sorokat.

 

Köszönöm

Delila10 Creative Commons License 2014.07.30 0 0 25592

Próbáld meg ezzel a függvénnyel:

 

Function Idok(cella As Range)
    Dim sor As Long, oszlop As Integer
    sor = cella.Row: oszlop = cella.Column
    
    If Cells(sor - 1, oszlop) > "" Then
        Idok = cella - cella.Offset(-1)
    Else
        Do While Cells(sor - 1, oszlop) = ""
            sor = sor - 1
        Loop
        Idok = cella - Cells(sor - 1, oszlop)
    End If
End Function

 

 

Érdemes majd egy HA függvénybe beágyazni. Pl. az idők az E oszlopban vannak, akkor

 

=HA(E2="";"";idok(E2))

 

hogy a függvény másolásakor ne adjon egy halom #-ot.

Előzmény: djuice (25587)
Fferi50 Creative Commons License 2014.07.30 0 0 25591

Szerintem ez már makro (saját függvény) lesz.

Előzmény: djuice (25587)
Fferi50 Creative Commons License 2014.07.30 0 0 25590

Szia!

Remélhetőleg a név, cím, kódszám különböző oszlopokban szerepel. Mármint egy oszlop a név, egy oszlop a cím és így tovább.

 

Ebben az esetben kellene egy fejléc, azaz az oszlop első cellája legyen a meghatározás, mondjuk a név.

 

Ezután adatok - speciális - listatartomány a név oszlop, szűrőtartomány a név oszlop első cellája, más helyre másolja, az új helynek válassz ki egy cellát, csak az egyedi rekordok  bepipálod, majd ok.  Az új helyen láthatod, hány sor lett.

 

Ha egy oszlopban ömlesztve vannak, akkor szét kell őket választani. Remélhetőleg van valamilyen elválasztójel. Akkor adatok - szövegből oszlopok és beírod az elválasztójelet (ha nincs spéci elválasztójel, akkor próbáld a szóközt - igaz ekkor a név két -vagy több - oszlopba fog kerülni, de azokat utána könnyebb összerakni.). Ezután folytatod az előzőekben leírtakkal.

 

Vagy a név oszlopot átmásolod egy új helyre - ezután adatok - ismétlődések eltávolítása.

 

Üdv.

Előzmény: CérnaSzáll (25588)
CérnaSzáll Creative Commons License 2014.07.30 0 0 25589

És igen, ezután mindenképpen előbb olvasok, aztán írok.

Visszaolvastam, köszönöm :)))

Előzmény: CérnaSzáll (25588)
CérnaSzáll Creative Commons License 2014.07.30 0 0 25588

Sziasztok!

 

Közepesen laikus excel-felhasználó vagyok, abban kérném a segítségeteket, hogy van egy 25e< soros ömlesztett táblázatom ami neveket, címeket, kódszámokat tartalmaz. Egy név többször is szerepel, és ebből szeretném leszűrni azt, hogy hány különböző ember szerepel benne (ergo minden név csak egyszer szerepeljen). Milyen beállítással és hogyan tudom ezt az adatot egyszerűen kinyerni? 2007-es excelem van.

 

Előre is köszönöm :)

 

 

djuice Creative Commons License 2014.07.30 0 0 25587

Újabb kérdésem:

Arra kéne valamit kitalálni, hogy ha egy oszlopban függvénnyel vizsgáltatom a szomszédos oszlop celláit, nevezetesen abba idő értékek szerepelnek Ó:PP:MM formában és egymást követően a különbségi időket szeretném számoltatni belőlük, viszont vannak üres cellák is közben, akkor azt mivel lehet megoldani, hogy vegye az azelőtti olyan cellából az értéket, ami nem már üres? Tudom hogy van vmi TELI vagy hasonló függvény, csak nekem lépésben kéne egyesével visszafelé haladjon a vizsgálat, amég nem talál nem üres cellát.

 

Köszönöm!

Fferi50 Creative Commons License 2014.07.30 0 0 25586

Arról már nem is beszélve, hogy nem is csak egyetlen celláról lehet szó. Pl. Activesheet.usedrange.cells. Nos ez biztosan nem egy cellát jelent, hanem egy kicsivel többet....

Előzmény: Delila10 (25585)
Delila10 Creative Commons License 2014.07.30 0 0 25585

Egy elrettentő példát már feltettem ide egy tankönyvből. Most egy haver küldött egy idézetet egy kezdőknek szólóból:

 

A Cella (Cells)  a Munkalap (WorkSheet) és a Tartomány (Range) objektumnak egy olyan tulajdonsága, mely paramétereiben hivatkozott cellához a megfelelő - egyetlen cellát tartalmazó - Range típusú objektumot rendeli.

 

Ebből biztos könnyen megtanul programozni a delikvens. :)

freyya Creative Commons License 2014.07.30 0 0 25584

Rájöttem, köszi szépen! :)

Előzmény: Fferi50 (25582)
freyya Creative Commons License 2014.07.30 0 0 25583

Ezer köszönet! :)

Előzmény: Fferi50 (25581)
Fferi50 Creative Commons License 2014.07.30 0 0 25582

Bocs, még a szűrőnél még be kell jelölni azt is, hogy egyedi értékek.

 

Üdv.

Előzmény: Fferi50 (25581)
Fferi50 Creative Commons License 2014.07.30 0 0 25581

Szia!

 

Excel 2007-től működik az Adatok - ismétlődések eltávolítása.

Előtte pedig:

Adatok - szűrők - speciális - szűrendő terület az oszlopod, kritérium az oszlop feje - helyben szűrés és utána átmásolás, vagy új helyre másolja és megadod neki az új helyet.  Ennél a szűrésnél kell fejléc az oszlopra.

 

Üdv.

Előzmény: freyya (25580)
freyya Creative Commons License 2014.07.30 0 0 25580

Sziasztok!

 

Ha van egy listám, amiben nagyon sok minden többször (mindig más mennyiségben) szerepel, de nekem minden csak egyszer kell rajta, akkor arra van gyorsabb módszer, mint sorba tenni, és manuálisan törölgetni a felesleges sorokat?

Fferi50 Creative Commons License 2014.07.30 0 0 25579

Szia!

Köszi a kiegészítést, mint írtam én ezt a formát nem használom, ezért aztán nem is ismerem jól a "természetrajzát".

 

Üdv.

Előzmény: Delila10 (25578)
Delila10 Creative Commons License 2014.07.30 0 0 25578

Az ActiveCell.FormulaR1C1 = "=R[-3]C1*3" képlet az aktív cellánál 3 sorral feljebb, az A oszlopban lévő adatot szorozza meg 3-mal.

 

A C1  fixen hivatkozik az első oszlopra, vagyis az R[-3]C1 egy vegyes hivatkozás. Az aktívtól egy oszloppal jobbra lévő cellára a C[1] mutat.

 

Összefoglalva: a szám, ami az S és C után szögletes zárójelek között van, az relatív hivatkozás, ami meg zárójelek nélkül, az fix.

Előzmény: Fferi50 (25577)
Fferi50 Creative Commons License 2014.07.29 0 0 25577

Szia!

 

A beállítások - képletek - menüpontban lehet átállítani,  S1O1 hivatkozási stílusnak nevezik.

Ilyenkor az oszlopok is számmal vannak jelölve. A hivatkozás pedig a minta szerinti, tehát az A1 cella S1O1 a képletekben.

A relatív hivatkozások is érdekesek , pl. lehet ilyen képlet, hogy =S[-3]O1, ami 3 sorral előbb és 1 oszloppal arrébb hivatkozik.

 

A VBA-ban van ilyen lehetőség, hogy a képletet S1O1 formában is ki tudod íratni, csak miután a VBA nyelve angol, ott az R1C1 a "divat".

Activecell.FormulaR1C1, sőt van FormulaR1C1local is, ami nálunk S1O1-et mutat az R1C1 elnevezés helyett.

De átállítás nélkül is megkaphatod a cellák S1O1 formátumú címét az address ReferenceStyle:=xlR1C1 paraméterével.

 

Bizonyára vannak helyzetek, amikor jobban "festenek", könnyebben megírhatók ebben a formában a képletet, de nekem elég zavaróak voltak, amikor megpróbáltam egy kicsit közelebbről megismerkedni velük, úgyhogy maradtam a A1 formula mellett.

 

Üdv.

 

Előzmény: djuice (25576)
djuice Creative Commons License 2014.07.29 0 0 25576

Ha már itt tartunk, hallottam egy tanártól egy éve hogy excelben vagy O.O. Calcban átállíthatóak a táblafejlecek jelzései, hogy ne betűzöttek hanem ugyanúgy sorszámozottak legyenek. Erről mit tudunk bővebben, hogy lehet átállítani és ami lényegesebb, hogy a hívatkozások ezután hogy változnak?

Előzmény: Fferi50 (25575)
Fferi50 Creative Commons License 2014.07.29 0 0 25575

Szia!

 

Igen, az oszlop() az egy függvény, amelyik ebben a formában az adott cella oszlopának számát adja vissza. Tehát a B oszlopban az oszlop() függvény a 2 -es számot adja vissza, a C oszlopban levő celláknál 3 az eredmény, és így tovább.

Viszont, ha beírod a konkrét tartományt a zárójelek közé, akkor az ahhoz tartozó oszlop számát adja vissza:

Pl. ha oszlop(C3) a képlet, akkor pedig az eredmény 3, mivel a C oszlop a harmadik oszlop - és ebben a formában bármelyik cellába is írod a képletet, mindig 3 lesz az eredmény.

 

Üdv.

Előzmény: djuice (25574)
djuice Creative Commons License 2014.07.29 0 0 25574

Ezeket külön köszönöm! Hasznos, bár azt hittem az oszlop() egy beékelt másik fgv.

Előzmény: Fferi50 (25572)
ND7000 Creative Commons License 2014.07.29 0 0 25573

Szerintem is add meg az utolsó paramétert (tartományban keres: Hamis vagy 0)

Nekem volt már ebből negatív meglepetésem :)

Előzmény: Fferi50 (25572)
Fferi50 Creative Commons License 2014.07.29 0 0 25572

Szia!

 

Rendben van ez így (bár én szeretem az Fkeres utolsó paraméterét is megadni, akkor is, ha az alapértelmezést használom).

A példámban az Fkeres harmadik paramétere  - az oszlop szám - azért szerepelt képlettel, mert a kérdésedben az egész sort említetted, hogy szeretnéd átvenni.

Feltételezve, hogy a táblázatod A1-nél kezdődik, és a kereső munkalapon is A oszlopban van a keresési érték, akkor azzal a képlettel a táblázat minden celláját át tudod másolni könnyedén és nem kell átírni az oszlopszámokat.

Természetesen, ha a keresést mondjuk a C oszlopban levő érték alapján a D oszlopban kezded, a táblázat pedig a másik lapon A oszloptól kezdődik, az oszlop()-2 adja meg a jó oszlopszámot az Fkereshez.

 

Valóban nagyon sok esetben jó az Fkeres /vkeres, de ennél azért az Index - hol.van páros egy kicsit még többet tud, mivel így nem csak  az első oszlop/sor alapján lehet keresni, illetve a keresés tárgya lehet hátrább, mint a megkapni kívánt eredmény.

 

Persze mindennek megvan a maga helye....

 

Üdv.

Előzmény: djuice (25571)
djuice Creative Commons License 2014.07.29 0 0 25571

Nagyon köszönöm! Eszembe se jutott volna az FKERES, pedig ez sokszor a svájci bicska. Én meg már kezdtem beleásni magam az adatbázis rejtelmeibe. :)

 

Kicsit át kellett alakítani, nekem így hozta a várt eredményt:

 

=FKERES($C3;'Preset list'.$A$2:$B$129;2)

 

 

Előzmény: Fferi50 (25570)
Fferi50 Creative Commons License 2014.07.28 0 0 25570

Szia!

 

Ebben az esetben az fkeres függvényt kellene használnod, végig az adott soron:

A oszlopba beütöd a sorszámot

B oszloptól a képlet:

=fkeres($A$1;adatok!$A$1:$D$200;oszlop();0)

 

Vagy:

Az A oszlopra teszel egy érvényesítést, ami a sorszámokat tartalmazza és abból választasz, a képlet ugyanaz mint fent.

Viszont ebben az esetben nem kell feltétlenül sorszámnak lennie az azonosítónak, lehet betű és szám is, nem kell rá emlékezned, hiszen a listából kiválaszthatod.

Adatok - érvényesítés - list és a lista forrásának az adatok munkalap első oszlopának értékes részét kijelölöd (ezt akár el is nevezheted és akkor névvel lehet megadni az érvényesítés listáját).

 

Üdv.

Előzmény: djuice (25569)
djuice Creative Commons License 2014.07.28 0 0 25569

Sziasztok!

 

Segítségre volna szükségem.

 

Van egy excel táblám árutétel nevekkel és tételszámokkal. Lehetséges-e, hogy egy másik táblában
vagy épp egy másik munkalapon én csak sorszámokat gépeljek a cellákba (ne hívatkozási képleteket
hogy ehhez mindig ide oda kattingatni kelljen a táblák közt) és lehozza a másik listából a
sorszámnak megfelelő tételek nevét, amit ki szeretnék gyűjteni ill. akár az adott sort? Esetleg ez
a fajta adatfeldolgozás már adatbázis kezelés témaköre?

Pl. ilyesmire gondolok:

 

árutétel listája
----------------
1 | cipő | női | 35 méret | piros
2 | cipő | női | 37 méret | fekete
3 | kalap | női | fehér
4 | cipő | ffi | 40 mért | kék
5 | ing | ffi | 38 méret | fehér

 

Nekem pl. a kalap és az ing kell egy másik táblában majd szerepeljen, tehát csak beütném a
tételszámát hogy 3, a másiknál hogy 5 és a teljes sort átemelné a listából.

 

Köszönöm!

varga3p Creative Commons License 2014.07.28 0 0 25568

A 2007-es verziót használó gépeken is működik :).

 

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

 

Sajnos természetszerűleg lassabb lett tőle a futás, de már elkezdtem rajta dolgozni, már kigyomláltam 2 If..Then utasítást belőle.

Előzmény: Törölt nick (25557)
pimre Creative Commons License 2014.07.28 0 0 25567

Bocsi, félreértettem a problémát:-(

Előzmény: Törölt nick (25562)
Kádikó Creative Commons License 2014.07.28 0 0 25566

Huh. Ez tényleg egyszerű volt.

Köszi szépen.

Előzmény: Fferi50 (25565)
Fferi50 Creative Commons License 2014.07.28 0 0 25565

Bocsi, nem a loop elé, hanem az i=i+1 elé.

Előzmény: Fferi50 (25564)
Fferi50 Creative Commons License 2014.07.28 0 0 25564

Szia!

 

A loop elé kellene egy end if  hogy lezárd a feltétel vizsgálatot.

 

Üdv.

Előzmény: Kádikó (25563)
Kádikó Creative Commons License 2014.07.28 0 0 25563

Sziasztok.

 

Megoldást keresek egy problémára, de sajnos nem vagyok túl jártas a Visual Basicben. 

Ha hajlandó volna valaki segíteni, a feladat egy egyszerű matek volna, a következő:

 

i = 5
Do While i < 40
If Cells(i, 5) = "E" Or Cells(i, 5) = "F" Then
Cells(i, 13) = Cells(i, 7) * 0.5 + Cells(i, 12) * 1.6
Else: Cells(i, 13) = Cells(i, 7) * 0.5 + Cells(i, 12)
i = i + 1
Loop

 

Erre azt az üzenetet kapom, hogy "Compile Error: Loop Without Do"

 

Szerintem valami banálisat tévedek, de sajnos nem tudom, hogy mit.

A segítségért köszi előre is.

Törölt nick Creative Commons License 2014.07.27 0 0 25562

És tudod programból módosítani a referenciát is? Mert nekem el sem indul a program, ha hiányzó referenciát észlel.

Előzmény: pimre (25560)
varga3p Creative Commons License 2014.07.27 0 0 25561

Igen, a 75 a "data" munkalapon lévő oszlopok száma ebben a verzióban.

 

A bent használt éles táblázatban az évek alatt és az igények bővülésével már azt hiszem, 130 fölé hízott az oszlopszám, és dokumentumtípusonként kb. 20 értéket kell cserélnie, szóval jól megdolgoztatjuk a makrót, rá is férne egy kis gyorsítás.  (az élesben szerepel a képernyőfrissítés ki-be kapcsolása is, az talán gyorsít rajta egy kicsit)

 

 

Előzmény: Törölt nick (25559)
pimre Creative Commons License 2014.07.27 0 0 25560

Én valamikor találkoztam az Application.Version property tesztelésével.  És a kapott érték alapján tudtam meghatározni az objektumkönyvtár helyét. Itt találtam egy jó leírást erről: http://www.rondebruin.nl/mac/mac002.htm

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

"Tools/References részben be kellett állítani pl. Word objektumkönyvtárat."

 

A Word objektumkönyvtárnak verziónként eltérő neve van. A 2010-es Officeban 14-es objektumkönyvtár van. Ilyen a 2007-es Officeban nincs, hanem ott 12-es van. Ezért annyi bizonyos, hogy a 2010-ben működő fájl egy az egyben biztosan nem fog működni 2007 alatt, csak ha módosítod a Word referenciát. Vagy egy 2007-es, egyébként működő programban átírod a VBA kódot.

 

"Köszönöm a "kifogásolható" részekkel kapcsolatos jelzést is, ez már az én feladatom lesz, hátha sikerül egyszerűsítenem."

 

Az is felmerült, hogy egy cellatartományban miért ciklussal keresi az értéket, amikor a Find metódus pont erre való, és ezerszer gyorsabb?

Illetve, az általad kimásolt kódrész miért éppen 75-ig fut? Fixen ennyi oszlop van a Data munkalapon?

 

"de nem fogom feladni, mert még sokmindent szeretnék automatizálni :)."

 

Helyes. :)

 

Előzmény: varga3p (25558)
varga3p Creative Commons License 2014.07.27 0 0 25558

Hűha! Nagyon szépen köszönöm!!

 

2010-es Excellel tudtam most csak kipróbálni, azon remekül működik.  Holnap kiderül, hogy a benti gépeken hogyan viselkedik, de mivel ott az eredeti is ment, így azért bízom benne, hogy nem lesz gond. 

 

Most végiggondolva úgy rémlik, hogy annakidején bent sem indult el zökkenőmentesen a dolog, a Tools/References részben be kellett állítani pl. Word objektumkönyvtárat. A hibaüzenetre így évek távlatából már nem emlékszem.

 

Így utólag azt hiszem, értem a módosított kódod logikáját. Kár, hogy nem őriztem meg a korábbi próbálkozásaimat, most összevethetném vele, hogy hol tévedtem el. Valószínűleg több sebből is vérezhetett.

 

Köszönöm a "kifogásolható" részekkel kapcsolatos jelzést is, ez már az én feladatom lesz, hátha sikerül egyszerűsítenem.  Csak néhány hete kezdtem érdemben  foglalkozni a makrókkal a Kovalcsik-féle könyv illetve egy YT-os csatorna alapján, és sajnos még nagyon az elején járok, de nem fogom feladni, mert még sokmindent szeretnék automatizálni :).

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

Na szóval így kellene kinéznie:

 

Az elejére a változó-deklarációk közé:

Dim STR As Word.Range

 

A kiemelt kódrész módosítva:

For i = 1 To 75
    If ThisWorkbook.Sheets("data").Cells(1, i).Value <> "" Then
        SearchString = "$" + FormatCellValue(ThisWorkbook.Sheets("data").Cells(1, i).Value) + "(" + ConvertToLetter(i) + ")$"
        For Each STR In wdDoc.StoryRanges
            With STR.Find
                .Format = True
                .Text = SearchString
                .Replacement.Text = ThisWorkbook.Sheets("data").Cells(CaseFileRow, i).Text
                .Replacement.Font.Color = RGB(0, 0, 0)
                .Execute Replace:=wdReplaceAll, Forward:=True, Wrap:=wdFindContinue
            End With
        Next
    End If
Next i

 

Ez Office 2010-es (30 napos próba)verzión működött. Nekem itthon 2007-es van, az állt fejre az eredeti kódodtól. Nincs rá garancia, hogy nálatok a 2007-es gépeken menni fog.

 

Egyébként van a kódban néhány "érdekes" (értsd: szakmailag kifogásolható) megoldás.

Például, minek kell a Trim függvényt 27 soros kóddal (Function FormatCellValue(Value As String) As String) helyettesíteni?

(Legalábbis úgy tűnik, ekvivalens a kettő.)

Vagy mi értelme van ennek:

ThisWorkbook.Sheets("data").Cells(CaseFileRow, 1).Value <> Null

amikor a bal oldaltól függetlenül az eredmény mindig hamis?

 

De az a lényeg, hogy működik :)

Előzmény: varga3p (25552)
Törölt nick Creative Commons License 2014.07.26 0 0 25556

Nekem elakad ennél a sornál

.Format = True

Automation error, Excel összedől, újraindul...

Még este ránézek.

Előzmény: varga3p (25552)
Fferi50 Creative Commons License 2014.07.25 0 0 25555

Szia!

 

Activesheet.Shapes(index).textframe.characters.text  adja meg a benne levő szöveget. Az index lehet szám, vagy a textbox neve.

 

Üdv.

Előzmény: Eredő Vektor (25554)
Eredő Vektor Creative Commons License 2014.07.25 0 0 25554

Ja, nem Userformon van, lehet az a baj a setfocus-al. Sőt.

De akkor hogy tudom a benne lévő szöveget kiválasztani?

Előzmény: Eredő Vektor (25553)
Eredő Vektor Creative Commons License 2014.07.25 0 0 25553

A következő kóddal szeretnék kiválasztani egy textboxban lévő szöveget:

Ezzel működnie kéne, ha jól csinálnám, de valamit nem :(

 

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("A1")) Is Nothing Then
With Me.TextBox1
.SetFocus
.SelStart = 0
.SelLength = Len(.Text)
End With
End If
End Sub

 

Ezt úgy találtam, de a 2010-es excel pl nem ismeri a textbox setfocus tulajdonságát... (Nálam:)

 

 

varga3p Creative Commons License 2014.07.25 0 0 25552

Köszönöm a hozzászólásokat!

 

Valóban, a teljes környezet ismerete nélkül lehetetlen küldetés ezt megoldani, erre gondolhattam volna.

 

Megfogadva a tanácsot, készítettem a táblázatból és a dokumentumokból egy nagyon lebutított, publikus változatot és feltöltöttem egy tömörített fájlban ide:

http://data.hu/get/7908211/level_makro.zip

 

A táblázat "macro" munkalapjára történő kattintás aktiválja a Userformot. A dummy verzióban csak 2 választható dokumentumtípust hagytam meg az egyszerűség kedvéért. ("level1", "level2") 

 

Az "empty" névvel megjelölt fájlok a template-ek. Ezekből  most a "level2" nevű az érdekes,  mert itt példaként az élőlábban is szerepel egy "$..$" jelöléssel ellátott szöveg, amelynek a cseréjét szeretném megoldani a makróval.

 

Meggeneráltam a 0002. sz esetre egy  "level2" típusú dokumentumot. ("eredmény" néven elmentve). Ebben látszik, hogy a makró valamennyi megjelölt szöveget kicserélte, kivéve az előlábban szereplőt. (elvárt_eredmény néven elmentettem egy olyan verziót is, ahol kézzel kitöltöttem a szükséges adatot az előlábban)

 

 

A lépésenkénti ugrálással már próbálkoztam korábban, de sajnos nem jutottam vele közelebb a megoldáshoz.  Ha jól sejtem, ez a kódrészlet végzi el a cseréket, de úgy tűnik, ez csak a szövegtörzsre terjed ki.

 

 

For i = 1 To 75
    If ThisWorkbook.Sheets("data").Cells(1, i).Value <> "" Then
        SearchString = "$" + FormatCellValue(ThisWorkbook.Sheets("data").Cells(1, i).Value) + "(" + ConvertToLetter(i) + ")$"
        With wdDoc.Range.Find
            .Format = True
            .Text = SearchString
            .Replacement.Text = ThisWorkbook.Sheets("data").Cells(CaseFileRow, i).Text
            .Replacement.Font.Color = RGB(0, 0, 0)
            .Execute Replace:=wdReplaceAll, Forward:=True, Wrap:=wdFindContinue
        End With
    End If
Next i

 

 

A megoldás keresése során korábban találtam egy olyan információt, hogy ahhoz, hogy a teljes Word-dokumentumban keressen a makró, a "storyRange" gyűjtemény valamennyi elemét is vizsgálnia kell. Ezen elindulva találtam is példákat erre, pl. előző hozzászólásban linkelt kódrészletet, azonban ezeket már nem tudtam sehogyan sem összehozni a saját makrónkkal.

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

Csatlakozom. Továbbá a kód szeretne egy Userform-ot megjeleníteni, amely nyilván további kódokat futtat, ám ez utóbbiakat sehol sem találom.

Szerintem célszerűbb lenne feltölteni a munkafüzetet és a template dokumentumot, meg esetleg egy jól kitöltött "eredmény"-dokumentumot is, hogy lássuk, minek kellene képződnie.

 

Előzmény: Eredő Vektor (25550)
Eredő Vektor Creative Commons License 2014.07.25 0 0 25550

A környezetet kéne látni, amiben fut. Enélkül a nyers kódot  analizálni...

Be lehet tenni töréspontokat a kódba, hogy a futás hol álljon meg, és onnantól lehet soronként debugolni és figyelni a változókat, egyéb eseményeket.

Előzmény: varga3p (25547)
Eredő Vektor Creative Commons License 2014.07.25 0 0 25549

"Csak" ez hiányzott nálam: Password:="szupertitkosjelszó", 

Köszönöm. 

Előzmény: Delila10 (25548)
Delila10 Creative Commons License 2014.07.24 0 0 25548

Az egyenlőségjel elé tegyél kettőspontot.

ActiveSheet.Protect UserInterfaceOnly:=True

 

Jelszó esetén

ActiveSheet.Protect Password:="szupertitkosjelszó", UserInterfaceOnly:=True

Előzmény: Eredő Vektor (25545)
varga3p Creative Commons License 2014.07.24 0 0 25547

Kedves Excel-szakértők!

A segítségeteket szeretném kérni.

 

Kollégáimmal egy Excel-makrót használunk (2007-es illetve 2010-es Excel)  egyes Word dokumentumok elkészítéséhez.  A makró a felhasználó által megadott információk alapján megnyitja a mintadokumentumot, és abban a"$..$" jelöléssel ellátott "mezőket" feltölti a táblázatban megfeleltetett adatokkal, majd a megfelelő módon elmenti.

 

Az eredeti kód nem a saját alkotásom, egy volt kolléga hagyta ránk, és egyelőre csak kisebb változtatásokat tudtam rajta végrehajtani, mert még nagyon-nagyon alapszintűek a makrós ismereteim.  

jelenlegi kód:
http://pastebin.com/JjDBqaGj

 

A jelenlegi változatban rendben lefut a makró, a szövegtörzsben minden adatot feltölt, nem ad hibaüzenetet, de az a probléma vele, hogy a Word mintadokumentum előlábában/élőfejében stb. található adatokat valamiért nem helyettesíti be.

Keresgéltem a neten, és annyira jöttem rá, hogy a StoryRanges gyűjtemény lehet a megoldás kulcsa, amivel az előlábban stb. is keresné a makró a "$..$" szöveget.

Az alábbi kódra is rátaláltam, amivel mások hasonló problémát oldottak meg:
http://pastebin.com/yeAB36C2

Ez alapján megpróbáltam átalakítani a makrónkat, ami lehet, hogy egy szakértőnek pofonegyszerű lenne, de az én tudásom sajnos kevés volt hozzá.

Előre is köszönöm, ha tudtok segíteni!  

VP

 

Eredő Vektor Creative Commons License 2014.07.24 0 0 25546

nem jó, vmit elrontok... a workbookhoz kellene füzetvédelem ellen, de nem működik.

Tudja ezt valaki?

Előzmény: Eredő Vektor (25545)
Eredő Vektor Creative Commons License 2014.07.24 0 0 25545

Megvan...a türelmetlenségemért pedig elnézést...

Füzetvédelem ellen: ActiveWorkbook.Protect UserInterFacOnly = True

Lapvédelem ellen:  Sheets("Sheet1").Protect UserInterFacOnly = True

 

Előzmény: Eredő Vektor (25544)
Eredő Vektor Creative Commons License 2014.07.24 0 0 25544

Hali,

itt tanultam, hogy makró futása közben ki lehet kapcsolni  a lapvédelmet egy egyszerű (Talán applictaion.xxx) = True/False sorral

Mi az a parancs, sehol sem találom bárhogy keresem :(

Eredő Vektor Creative Commons License 2014.07.24 0 0 25543

Köszönöm szépen. Elrakom magamnak, mert később hasznát vehetem.

Előzmény: Törölt nick (25518)
Fferi50 Creative Commons License 2014.07.23 0 0 25542

Szia!

 

A kimutatáshoz lehet számított mezőt is hozzáadni, ami tartalmazhat függvényt is.

 

A kimutatás eszközök között találod a számításokat, ezen belül a számított mezőt.

 

Üdv.

Előzmény: paragabika (25536)
Eredő Vektor Creative Commons License 2014.07.23 0 0 25541

Ha minden igaz, egy mező lehet több dimenzóban is. Pl az összeget tartalmazó oszlopot behúzhatod értéknek is, meg oszlopnak is. Így már lesz automatikusan képzett végösszeged az értékeknél, ha az oszlopban szűrsz az 1mFt felettiekre

Előzmény: Eredő Vektor (25540)
Eredő Vektor Creative Commons License 2014.07.23 0 0 25540

Jó a kimutatás tábla is a célra, de szerintem az összeget tartalmazó mezőt ne az értékek hez húzd, hanem az oszlopokhoz. Így már tudod szűrni a 1mFt felettieket. Persze így nem lesz (automatikus) végösszeged, mert azt csak az "Értékek" dimenzóra állítja elő

Előzmény: paragabika (25536)
Eredő Vektor Creative Commons License 2014.07.23 0 0 25539

A cella formátuma tök mindegy, ha nincs benne semmi (ebbe beletartozik a 0 is), akkor "üres".

 

Előzmény: Lizaa100 (25537)
Eredő Vektor Creative Commons License 2014.07.23 0 0 25538

SZUMHATÖBB() függvényt nézd meg. Ha jól emlékszem van már 2007-esben.

Jó lehet még az AB.SZUM is

Előzmény: paragabika (25536)
Lizaa100 Creative Commons License 2014.07.23 0 0 25537

Halihó!

 

Táblázatom jópár szöveges celláját üres cellaként értelmezi az Excel. Mindegy, hogy szövegre vagy általánosra van-e állítva.  Szűrést kellene végeznem, de ezeket a cellákat csak üresként értelmezi... Szerintetek mi lehet a probléma??

 

Liza

paragabika Creative Commons License 2014.07.23 0 0 25536

Sziasztok!

 

Az alábbi probléma megoldásában szeretnék segítséget kérni.

Van egy listám, amiből két összetartozó összeget kellene a hozzájuk tartozó partnerek nevére és azonosítójára összesítenem.

Ráadásul ezekből csak az egyik összeg érték 1 millió fölötti összértékeire vagyok kíváncsi.

 

Próbáltam a Kimutatás kezelővel (Excel 2007), de ott, a jelentésszűrőben nem sikerült függvényt megadni.

Mi a megoldás?

 

Ráadásul, azonos listából 6-8 szempont szerint kell szűrnöm, és havonta változik a lista tartalma.

 

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

 

PG

Delila10 Creative Commons License 2014.07.22 0 0 25535

Szívesen. :)

Előzmény: freyya (25534)
freyya Creative Commons License 2014.07.22 0 0 25534

BINGÓ!!!

 

Nagyon szépen köszönöm! :)

Előzmény: Delila10 (25533)
Delila10 Creative Commons License 2014.07.22 0 0 25533

A SZUMHA függvénnyel próbáld meg.

 

Előzmény: freyya (25532)
freyya Creative Commons License 2014.07.22 0 0 25532

Csak hogy érthető legyen, ez egy szükséges anyagok listája mennyiségekkel 15 termékhez. Van, amelyik mindegyikben szerepel, van amelyik csak némelyikben. És ebből kellene összeraknom, hogy akkor az adott anyagból összesen mennyi kell. Egymás alá másoltam a 15 listát, sorba rendeztem, hogy az azonos anyagok egymás alá kerüljenek, és az azokból szükséges mennyiséget akarom összeadni. Most megoldottam úgy, hogy beszúrogattam plusz sorokat ehhez a szigmás összegezéshez, de gondoltam, hátha itt tanulok valami gyorsabb módszert legközelebbre. 

 

Ja, és ezzel kapcsolatban lenne még egy kérdésem. Ugye így plusz sorokba lettek beszúrva az összegek. Na már most nekem kizárólag ezek a sorok kellenének, amikből össze lett adva, az nem. Kitörölni viszont nem tudom, mert akkor nem érvényes a képlet. Próbáltam az egészet átmásolni irányított beillesztéssel, hogy akkor már csak az értéket vegye alapul, de úgy meg minden egyéb formázás eltűnik, többek között az összegeket tartalmazó sorok kiemelése is, úgy meg megint macerás megtalálni és törölni közötte a többi sort. Lehet egy képletet automatikusan az eredményt tartalmazó sima számformátummá alakítani dokumentumon belül? 

Előzmény: freyya (25531)
freyya Creative Commons License 2014.07.22 0 0 25531

De ott meg valami csoportosítási alapot kér. Nekem hol három számot kell összeadom, hol nyolcat, hol tizenötöt. Lényegében több lista lett összegezve, és az azonos termékek számát kellene összeadni. Ezért tűnt leggyorsabbnak, ha kijelölés után a szigmára kattintok, de az meg következetesen alá akarja tenni az eredményt. A képletet ismerem, csak ugye azt sem tudom másolgatni, mert egymás alatt különböző hosszúságú oszlopokat kell összeadnom, egyenként beírni meg macerás.

Előzmény: Fferi50 (25530)
Fferi50 Creative Commons License 2014.07.22 0 0 25530

Szia!

 

Akkor a képletet írd a kijelölt cellák mellé.

Pld. első sor első 5 cellájának összeadása:   F1 cella képlete: =szum(A1:E1)

 

De ha az adatok - részösszegek menüpontot használod, akkor a párbeszéd ablakban az összeg az adatok alatt kapcsolót töröld.

 

Üdv.

Előzmény: freyya (25529)
freyya Creative Commons License 2014.07.22 0 0 25529

Sziasztok! 

 

Az megoldható valahogyan, hogy ha a SZUM ne a kijelölt cellák alá írja be az eredményt, hanem mellé? Egy táblázatban kellene különböző számú sorokat összeadnom, és ez lenne a legegyszerűbb. Hosszadalmas lenne sorokat beszúrogatni a célra. 

Törölt nick Creative Commons License 2014.07.21 0 0 25528

Konvertáltam Excel-be.

http://data.hu/get/7897822/kitelepites_budapesti_nevsor-1.xlsx

 

Szükséges némi adattisztítás, mert ahol 2 soros volt egy adat, azt két különböző sorba darabolta, ha jól számoltam volt 21 ilyen eset.

Más tördelési tévedés is előfordulhat, nem vállalok felelősséget az eredetivel való egyezésért. De talán jobb, mint a semmi.

Előzmény: e-lektor (25523)
Eredő Vektor Creative Commons License 2014.07.21 0 0 25527

megpróbáltam abbyy-val, de a pdf kibontása le van tiltva, így az abbyy nem tud belőle adatot átalakítani. Próbáltam pdf nyomtatóval új pdfet létrehozni, de azt sem engedi.

Előzmény: e-lektor (25525)
Eredő Vektor Creative Commons License 2014.07.21 0 0 25526

Ez nem probléma ennek a programnak.

Előzmény: e-lektor (25525)
e-lektor Creative Commons License 2014.07.21 0 0 25525

Köszönöm.
Sajnos a pdf 168 oldal.

Előzmény: Eredő Vektor (25524)
Eredő Vektor Creative Commons License 2014.07.21 0 0 25524
Előzmény: e-lektor (25523)
e-lektor Creative Commons License 2014.07.21 0 0 25523

Kedves excel értők!
http://www.budaipolgar.hu/data/cms104221/kitelepites_budapesti_nevsor.pdf

Ebből a pdf-ből szeretnék a kerület oszlopra rendezni. gondoltam excelbe bemásolva.
Sajnos beilleszteni sem sikeredik.
Van erre lehetőség, vagy csak a keresővel soronkénti másolgatás marad megoldásnak???

Delila10 Creative Commons License 2014.07.21 0 0 25522

Szívesen. :)

Előzmény: freyya (25521)
freyya Creative Commons License 2014.07.21 0 0 25521

Nagyon szépen köszönöm!!!

Előzmény: Delila10 (25520)
Delila10 Creative Commons License 2014.07.21 0 0 25520

A Ctrl gombot tartsd nyomva a másolás közben.

Figyeld meg, hogy számok, és szöveges adatok húzással történő másolása közben fordítva működik a Ctrl.

Előzmény: freyya (25519)
freyya Creative Commons License 2014.07.21 0 0 25519

Sziasztok!

 

Azt hol tudom beállítani, hogy ha lefelé húzom a cellákat, akkor az alapértelmezett funkció a cellák másolása legyen, és ne a kitöltés sorozattal? Kaptam már táblázatokat, amikben úgy volt, szóval elvileg megoldható. Eléggé lelassítja a munkát, hogy mindig rá kell kattintgatni és átállítani.

Törölt nick Creative Commons License 2014.07.17 0 0 25518

Tulajdonképpen rém egyszerű:

 

Public Conn As ADODB.Connection

 

Sub Connecting

    Dim strConnection As String
    
    Set Conn = New ADODB.Connection
    'strConnection = "Driver={Oracle in OraDB11g_home1};Dbq=XXXXX;Uid=myUser;" & "Pwd=myPassword;"
    Conn.Open strConnection
    HandleThings
    Conn.Close
End Sub

 

Private Sub HandleThings()
    Call QueryTestList
End Sub

 

Private Function QueryTestList() As Boolean

    Dim ws As Worksheet, mySQL As String, c As Range
    
    mySQL = "SELECT *.... (szokványos Oracle SQL lekérdezés)"
    Set ws = ThisWorkbook.Worksheets("Main")
    Set c = ws.Range("B2")
    Range(c, c.End(xlDown)).EntireRow.ClearContents
    Call Retrieve(Conn, mySQL, c)
End Function


Function Retrieve(Conn As ADODB.Connection, mySQL As String, Dst As Range) As Boolean
    Dim Rst As ADODB.Recordset
    
    Retrieve = True
    On Error GoTo Err
    Set Rst = New ADODB.Recordset
    Rst.Open mySQL, Conn, adOpenDynamic, adLockReadOnly
    Dst.CopyFromRecordset Rst
    Exit Function
Err:
    Debug.Print Err.Number & " - " & Err.Description
    Debug.Print mySQL
    Retrieve = False
    If Rst.State = adStateOpen Then Rst.Close
End Function

 

Kékkel színeztem azt a sort, ami a fejfájást okozta. Az elmúlt hónapokban végigpróbáltam egy csomó variációt, többek között ezt is, és csak ma jöttem rá, hogy a hiba végig a készülékben volt...

 

A HandleThings és egyéb szubrutinokban vannak azok az utasítások, amelyek a lekérdezést végzik, és a visszaadott rekordokat a munkalapra másolják.

 

Az előbb kicsit hamar járt a szám, mert ez bizony használja a tnsnames.ora fájlban konfigurált Local Net Service Name-et (azt kell az XXXXX helyére írni). De jó lesz így is. Tulajdonképpen azért akartam tnsnames.ora megkerülésével, hogy ha a kolléga gépén van Oracle kliens telepítve, akkor ne kelljen rendszergazdát hívni a tnsnames.ora beállításához, hanem anélkül is fusson a program. De mivel amúgy is kell rendszergazda a Group Policy módosításához, egy füst alatt a Net Service-t is konfigurálhatja.

 

Az ADODB használatához be kell állítani referenciát a Microsoft AcitveX Data Objects 2.8 Library-hoz.

Előzmény: Eredő Vektor (25517)
Eredő Vektor Creative Commons License 2014.07.17 0 0 25517

Gratulálok. Meg lehet nézni a publikus részét a kódnak?

Előzmény: Törölt nick (25513)
pimre Creative Commons License 2014.07.17 0 0 25516

Egyébként ez nem ugyanaz a kérdés, ami már tavaly októberben előjött, és amire tbando a #22507-ben adott egy megoldást? http://forum.index.hu/Article/viewArticle?a=127290947&t=9009340. Csak akkor még az F-ben volt az aktív/inaktív kifejezés.

 

Előzmény: djmorphy (25515)
djmorphy Creative Commons License 2014.07.17 0 0 25515

közben rájöttem. Pofonegyszerűen a min() és max()-al meg tudom oldani :D

Előzmény: djmorphy (25514)
djmorphy Creative Commons License 2014.07.17 0 0 25514

Köszönöm szépen!


Még egy dologba belefutottam amire még rákeresni sem tudok :D

Van egy dátum mf-em amibe fel van sorolva a 365 nap az A oszlopba. B oszlopban pedig, hogy "aktív" vagy "inaktív". Ez fkeres() és index() hol van() fgv-hez használom.

Hogyan tudnám meghatározni az intervallumot, hogy mi között aktív és melyik az a dátum mikor már inaktív értéke van a B oszlopnak?

Előzmény: Delila10 (25508)
Törölt nick Creative Commons License 2014.07.17 0 0 25513

És igen. Kipróbáltam a virtuális gépen, és csont nélkül megy a programom.

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

Nem próbáltam.... Nem is tudom, miért. Szeretem általában magam megoldani a problémáimat, csak ezzel már legalább egy éve nem boldogulok, tegnap 3-4 órát csesztem el vele, és a végén stresszoldásként írtam egy "hátha bejön" hozzászólást.

 

Igazából nem hiszem el, hogy az Oracle ennyire béna legyen, hogy olyan rendszert dobnak piacra, amit nem lehet VBA-ból lekérdezni. A neten talált 1000 megoldás küzül legalább egynek működnie kellene. Az a sanda gyanúm, hogy a szeretett céges IT-nk kavar be valami ostoba biztonsági beállítással... A lehetőségeimet meg hihetetlen mértékben lekorlátozzák, egyszerű júzerként egy ODBC DSN-t sem tudok létrehozni, mer' még ahhoz is rendszergazda kell, nemhogy drivert telepíteni, vagy ilyesmi.

 

De tegnap kiötlöttem a megoldást: létrehoztam egy virtuális tesztrendszert, ahol rendszergazda vagyok, és végre nagy ívben tojhatok az IT-s korlátokra. Aztán ha majd látom, hogy működik, tudni fogom, hogy mit kell beállíttatni velük a fizikai gépeken.

 

Egyébként a rendszer nem SAP, de bizonyos kényes adatok védelme miatt ennél többet nem mondhatok (és a probléma szempontjából amúgy sincs jelentősége).

Előzmény: Eredő Vektor (25510)
Eredő Vektor Creative Commons License 2014.07.16 0 0 25511

prog.hu-n van kapcsolódó téma, ott segítenek szerintem.

 

 

 

 

Előzmény: Törölt nick (25509)
Eredő Vektor Creative Commons License 2014.07.16 0 0 25510

Nem itt, inkább (külföldi) szakmai fórumon kérdezném meg. De fogadjunk, hogy már próbáltad...

Mit szolgál ki az Oracle? SAP-t?

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

Van valakinek tapasztalata arról, hogy hogyan lehet EXCEL VBA környezetben, tnsnames.ora kikerülésével Oracle adatbázishoz kapcsolódni? Olyan módszer kellene, ami 10g és 11g verziójú Oracle klienssel is működik (Win7 alatt, rendszergazda jogok nélkül). A net tele van mindenféle példákkal meg connection stringekkel, de nálam valahogy mind hibára fut, szóval olyan kódot szeretnék látni, ami bizonyítottan működik. Már nagyon régóta küzdök ezzel...

Delila10 Creative Commons License 2014.07.16 0 0 25508

Például a módosítható celláknál a Cellaformázás védelem fülén kiveszed a pipát a Zárolt négyzet elől, majd levéded a lapot (ekkor lép érvénybe a többi cella zárolása).

 

Vagy: lapfülön jobb klikk, Kód megjelenítése. Bal oldalon lent a Properties ablakban kikeresed a Scroll Area-t, és beírod mellé a területet, amiben engedni akarod a mozgást, pl. A1:B20.

Előzmény: djmorphy (25507)
djmorphy Creative Commons License 2014.07.16 0 0 25507

Sziasztok!

 

Kaptam egy olyan excelt amiben adatok A1:B20-ig voltak. Tulajdonképpen adatközlés volt. A oszlop szöveg B oszlopba értékeket kellet írjak. A definiált területen kívülre nem is engedett kattintani. Pl B21-re hiába kattintottam még a cellát sem jelölte ki. Ez nagyon bolondbiztosnak tűnik. Hogyan tudom én is megvalósítani? Tudom, hogy van jelszóval védhető, nem szerkeszthető stb de ott a cellát ki tudom jelölni.

Fferi50 Creative Commons License 2014.07.14 0 0 25506

De azért nincs kizárva, hogy csak szerencsém volt (mert a végén voltak megfelelő hosszúságú adatok), mindenesetre így talán könnyebb 2-3 "igazítással" megtalálni azt a szélességet, amibe minden rekord belefér.

Előzmény: Fferi50 (25505)
Fferi50 Creative Commons License 2014.07.14 0 0 25505

Szia!

 

Próbáld meg azt, hogy ráállsz az adatbázis utolsó rekordjára, majd ezután csinálod meg a mezőszélesség "optimalizálást".

Nekem 2010-es Acces-ben bejött.

 

Üdv.

Előzmény: pimre (25497)
Törölt nick Creative Commons License 2014.07.14 0 0 25504

A jelenséget sikerült reprodukálnom, a magyarázatát nem tudom. Próbáltam utánanézni, de konkrétan erre a kérdésre nem találtam választ. Annyit találtam, hogy tábla oszlopszélességét programból nem lehet állítani, és feltehetőleg azért, mert a júzer, akinek a programot írod, sosem találkozik magukkal az adatbázistáblákkal, hanem csak formokkal.

Form-ra rakott táblanézetben lehet "best fit" szélességet állítani, de az a "visible text"-re vonatkozik.

Szóval ez a probléma szerintem az "ez van, azt kell szeretni" kategóriába tartozik.

Előzmény: pimre (25497)
Fferi50 Creative Commons License 2014.07.13 0 0 25503

Szia!

 

Nem egészen értem, próbáltam hasonló fájlt másolni (2010-es excel), minden további nélkül másolta.

Valami gond lehet az excellel szerintem.

 

Üdv.

Előzmény: sp1988 (25502)
sp1988 Creative Commons License 2014.07.13 0 0 25502

próbáltam a bemásolt fájlt is másolni illetve megtaláltam a forrásadat mentése menüpontot is de az ki volt pipálva szóval nem tudom előző kiadású officcal ment ez simán vissza kell raknom mert ez így nem jó...

Előzmény: Fferi50 (25501)
Fferi50 Creative Commons License 2014.07.13 0 0 25501

Szia!

 

Vannak-e makrók a kimutatásodhoz kapcsolódóan? Mert az xls -be belemásolja, de az xlsx-be nem. Próbáld xlsm - (makróbarát excel) kiterjesztéssel másolni.

Ötlet: Előbb zárd be a másolt fájlt és csak utána az eredetit.

 

Ha nincs benne makró, akkor nézd meg az adatok - hivatkozások vagy kapcsolatok (leginkább mindkettő) menüpontban, mit mutat és módosíthatod, ha szükséges.

 

Még egy ötlet: másold át a bezárt fájlt és úgy nézd meg, mi az eredmény. 

 

Üdv.

Előzmény: sp1988 (25500)
sp1988 Creative Commons License 2014.07.13 0 0 25500

tovább pontosítom a leírást : nem csak a kimutatást másolom hanem az egész excel fájlt, ha elmentem xls-nek xlsx helyett akkor jó, tudom másolni pendriveon/emailben akár hogy és a hivatkozás is jó

Viszont így  pár funkció ami szükséges nem működik ezért akarom xlsx-nek hagyni

Előzmény: Fferi50 (25499)
Fferi50 Creative Commons License 2014.07.13 0 0 25499

Szia!

 

Ha csak a kimutatást másolod, akkor a hivatkozásokat "magával viszi", ezért kiabál. Az elküldés előtt - ha a forrást nem küldöd vele - akkor meg kell szüntetni a forráshivatkozást, a másik verzió, hogy a forrást is küldöd vele.

Egy tipp a hivatkozás megszüntetésére:

A kimutatást tartalmazó munkalapot átmásolod egy új munkafüzetbe. Ebben a munkafüzetben megkeresed a hivatkozások, külső hivatkozásokat és rákattintasz a megszüntetésre.

Ekkor az összes adat fix számmá alakul át, a kimutatás éppen akkori állapota szerint.

(Persze ezt lehet, hogy nem akarod, akkor marad a forrással küldés verzió.)

Mintha lenne olyan opció is valahol a kimutatás tulajdonságainál, hogy forrással együtt mentés - próbáld ezt megtalálni és az átmásolt munkafüzetben beállítani. Elvileg akkor is "elmúlnak" a külső hivatkozások.

 

Üdv.

 

 

Előzmény: sp1988 (25498)
sp1988 Creative Commons License 2014.07.13 0 0 25498

a következő problémával kapcsolatban kérnék segítséget:

van egy adathalmazom amiből csináltam egy kimutatást (2013-as excel) , a gond pedig az, hogy ha másolom vagy emailben küldöm akkor kiabál az excel , hogy nem találja a külső adatforrást, mert az elérési útvonal nem a kijelölt adathalmazra hivatkozik hanem az eredetileg létrehozott excelre.
Lehet nem túl érthető leírom egy példával:

eredeti excelben így néz ki a kimutatás forrása:munka!$AE$3:$AI$24

a másoltban pedig így : Users**** laptopDesktop[proba.xlsx]munka1'!$AE$3:$AI$24

azt szeretném elérni hogy a másolással ne hivatkozza meg nekem az eredeti fájl helyét hanem maradjon meg úgy mint az eredetiben volt

 

keresgéltem a súgóban meg a neten pár helyen de nem igazán találtam rá a megoldásra

pimre Creative Commons License 2014.07.13 0 0 25497

Ez nem jött be, mert csak magát a hozzászólást mutatja, a választ nem. Szóval itt: http://forum.index.hu/Article/showArticle?t=9003563 a 458-460-as hozzászólásokról van szó.

Előzmény: pimre (25496)
pimre Creative Commons License 2014.07.13 0 0 25496

Köszönöm, akkor belinkelem azt, amire egy számomra teljesen elfogadhatatlan választ kaptam, a viszontválaszomra pedig semmit: http://forum.index.hu/Article/viewArticle?a=129693818&t=9003563

 

És akkor majd ősszel ismét előveszem az Accesst, és megpróbálom kitanulni egy kicsit.

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

Szerintem nyugodtan feltehetsz itt Access kérdéseket is. Word-öt és Powerpointot is programoztunk már, mi gond lehetne belőle? Cooper kartács biztos nem fog kitiltatni érte. Ha pedig megy az angol, akkor meg határtalanok a lehetőségeid, mert rengeteg angol nyelvű fórum van, jobbnál jobb szakértőkkel.

Előzmény: pimre (25493)
Fferi50 Creative Commons License 2014.07.12 0 0 25494

Szia!

 

Nyilván nem ugyanaz egy táblázatkezelő és egy adatbázis kezelő működési alapelve.

Az excelben sok-sok képletezési lehetőség van, ami egy adatbázis kezelőben "természetesen" hiányzik.

Cserébe az access rengeteg adatot tud kezelni gyorsan, jelentések, kimutatások lényegesen gyorsabban jönnek belőle, mint excelből és a korlátozás is kevesebb. Viszont nem árt érteni az adatbázis logikához (kapcsolatok, kulcsok, stb.).

Tehát feladata válogatja, hogy melyiket célszerűbb használni. Nekem volt szerencsém mindkettővel dolgozni, mindkettő elég barátian viselkedett. (Volt olyan, amit excelben kezdtem el, de "kinőtte magát", ezért access lett belőle.)

 

Üdv.

 

 

Előzmény: pimre (25493)
pimre Creative Commons License 2014.07.11 0 0 25493

Off: "Lehet, egy adatbázis kezelő (akár acces) sokkal jobb lenne."

 

Ez nagyon sok feladatra igaz lenne, de....

 

Amikor intenzíven dolgoztam egy személyi nyilvántartó programon, többen felvetették, hogy miért nem access-ben írom. Akkor azt feleltem, hogy azért, mert az Excelt ismerem, az Accesst nem, így nem tudom, mekkora munka lenne áttérni, és abban oldani meg a feladatot.

 

Ma már áldom a szerencsémet, hogy az Excelnél maradtam. 

 

1. Az Accesshez nem találtam tisztességes szakirodalmat.

2. Van ugyan néhány Access fórum itt az indexen: "MS Access - Segíccség kéne, de gyorsa" és az "Access programozas" című és talán egy harmadik is, amelyekben havonta, néha félévente ír valaki. Ezek többsége is kérdés, vagy - mint az én esetemben - egy egészen oda nem illő válasz.

 

Szóval megfelelő háttér nélkül egy kezdőnek, illetve autodidaktának sajnos nem nagyon lehet komolyabb feladatokat Access-ben felvállalnia.

 

Azt nem tudom, hogy létezik-e más adatbáziskezelő, ahol az ember megfelelő háttérrel tud programot írni.

 

On

Előzmény: Fferi50 (25487)
Fferi50 Creative Commons License 2014.07.11 0 0 25492

Szia!

 

Excel2010-ben már működik a Hahiba(hosszúképlet,"") függvény is.

Elsőre nekem is ez jutott eszembe, ha már megvan az új fájl, akkor frissíti, de azt még nem néztem meg, mi van akkor, ha a frissítéskor sincs meg.

Amúgy szerintem rá kellene bízni a makróra az összesítések bekérését, én nem feltétlenül képletben képzeltem ezt el, lehet, hogy elég értékben betenni.

De még gondolkodom rajta és valószínűleg levelezni is fogok papamacival - téged is beteszlek cc-be.

 

Üdv.

 

 

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

Megjött, megnéztem. Első pillantásra elég komplikáltnak tűnik, hogy honnan hová kerülnek az adatok. Van erre valami szabályszerűség? Ma biztos, hogy nem fogok elmerülni benne, talán hétvégén. (Ha közben Fferi küld egy megoldást, szólj légyszi, hogy már nem aktuális).
Két kérdés/gondolat:


1) Mennyire fix ezeknek a fájloknak a szerkezete? Lehet módosítani rajta, ha úgy gondolom, hogy más szerkezettel könnyebb lenne a feladatot leprogramozni?


2) Alternatívaként próbáld ki azt, hogy
=HA(HIBÁS(hosszúképlet);"";hosszúképlet)
Ez megszünteti a #HIV! hibaüzeneteket, és a helyükön üres sztringeket hoz létre. Az üres sztring nem okoz problémát az összegzéseknél, szóval a táblád használható lesz annak ellenére, hogy pl. a forrásfájlok többsége nem létezik. Azt gondolom (mármint nem vagyok biztos benne, ki kell próbálni), hogy ha a hiányzó fájlok elkészülnek, akkor a külső hivatkozások frissítésével az új adatok át fognak jönni. Pl. az összegző táblázat következő megnyitásakor.

Előzmény: papamaci1980 (25489)
Törölt nick Creative Commons License 2014.07.11 0 0 25490

Küldjed nekem is, hátha nem lesz jobb dolgom, mint elmerülni benne. ;)

Előzmény: papamaci1980 (25489)
papamaci1980 Creative Commons License 2014.07.11 0 0 25489

Szia

 

Tehát kb. 70 dolgozó, kéthetente 1 file, 36 héten keresztül, azaz idestova 1260 file. Egy file-ba csak egy dolgozó adatai kerülnek, amit ő készít el.

Közös használatú lesz az a munkafüzet, amit a dolgozók töltögetnek, mert egy közös meghajtóról érhető el, és így egyszerre többen is tudnak benne dolgozni. A mentés és a file nevének generálása automatikus.

Hiába teszem be az összesítőt, akkor is olyanra hivatkoznék, ami még nem létezik és ugyanaz lenne a hibajelenség, mintha külön összesítőt készítenék.

Elküldöm e-mailben (ha nem gond) és akkor egyértelműbb lehet az egész.

 

Üdv.

Előzmény: Fferi50 (25487)
Fferi50 Creative Commons License 2014.07.11 0 0 25488

Az első mondat után a kérdőjel átváltozott ponttá, tehát helyesen:

 

Tutibiztos, hogy ezt csak excelben kell megoldani?

Előzmény: Fferi50 (25487)
Fferi50 Creative Commons License 2014.07.11 0 0 25487

Szia!

 

Tutibiztos, hogy ezt csak excelben kell megoldani. Arról nem tudunk semmit, hogy hány dolgozóról van szó, milyen időtávokra vonatkoznak az egyes fájlok és hány dolgozó ír egy-egy fájlba. Lehet, egy adatbázis kezelő (akár acces) sokkal jobb lenne.

Ha már excel, miért nem gondolkodsz közös használatú fájlban. Abba egyből beleteheted az összesítő munkalapot is akár.

 

Csatlakozva az előttem szólókhoz, szerintem érdemes lenne egy kicsit pontosabban leírni a feladatot (nem a "hadititkokra" gondolok, csak az alap körülményekre).

 

Üdv.

 

 

Előzmény: papamaci1980 (25486)
papamaci1980 Creative Commons License 2014.07.11 0 0 25486

"Hát, ez az a kérdés, amire ennyi információból senki nem fog tudni jól válaszolni. Az ilyen rendszereket alaposan át kell gondolni és megtervezni. Mi az egésznek a célja? Milyen legyen a forrásfájlok és az összesítő táblázat szerkezete, hogy a legjobban segítse a programlogikát? Milyen rendszerben kell a lekérdezés? Kell-e felhasználói felület, ahol válogatni/szűrni lehet az adatok, fájlok, stb. között? Ha kell, milyen funkciókat tudjon? Mik a hibalehetőségek, és ezeket milyen mélységben, hogyan vizsgálja/kezelje a program?"

A cél: a dolgozók által elkészített (jellemzően szám)adatokat tartalmazó táblázatból egy összesítő táblázatba beültetni az adatokat. A forrásfileban 87 adat van oszlopokba rendezve, és azt kellene a gyűjtőbe sorokba rendezni. Semmilyen szűrésre nincs szükség, csak egyszerű adatátültetésre. De amíg nincs meg a forrásfile, addig a tábla elkészítésénél folyamatosan hibát kapok, ha képlettel hivatkozok. Első körben igen, úgy gondoltad, hogy képletekkel működne a gyűjtő munkalap, azonban ezeket a képleteket makró írja be, de csak akkor, ha elkészült a forrásfájl.

Előzmény: Retro Image (25485)
Retro Image Creative Commons License 2014.07.11 0 0 25485

"Ezért gondoltam a makrós megoldásra, amiben olyan feltételt kell szabni, hogy csak akkor töltődjenek ki az összegyűjtő táblázat cellái, ha a dolgozó létrehozta azt a file-t, amire hivatkozik az összegyűjtő file bizonyos cellája."

 

Itt egy kis zavart érzek az Erőben.

Ami "hivatkozik", az képlet. Úgy gondoltad, hogy mégiscsak képletekkel működne a gyűjtő munkalap, azonban ezeket a képleteket makró írja be, de csak akkor, ha elkészült a forrásfájl? Tulajdonképpen megvalósítható...

 

"A kérdés, hogy milyet és hogyan?"

 

Hát, ez az a kérdés, amire ennyi információból senki nem fog tudni jól válaszolni. Az ilyen rendszereket alaposan át kell gondolni és megtervezni. Mi az egésznek a célja? Milyen legyen a forrásfájlok és az összesítő táblázat szerkezete, hogy a legjobban segítse a programlogikát? Milyen rendszerben kell a lekérdezés? Kell-e felhasználói felület, ahol válogatni/szűrni lehet az adatok, fájlok, stb. között? Ha kell, milyen funkciókat tudjon? Mik a hibalehetőségek, és ezeket milyen mélységben, hogyan vizsgálja/kezelje a program?

 

Ha ezek mind ki vannak találva, és fejben megvan, hogy mit, honnan, hová kellene pakolni, akkor lehet konkrét makrókód megírásába kezdeni.

Előzmény: papamaci1980 (25484)
papamaci1980 Creative Commons License 2014.07.11 0 0 25484

"...azért nem működik a tökéletes képlet, mert a dolgozó véletlenül beletett egy plusz szóközt a fájlnévbe, kötőjel helyett alulvonást írt, nem a Munka1-ra, hanem a Munka2-re dolgozott, stb..." - A dolgozók által elkészített file-ok neveivel nem lesz gond, mert az automatikusan képződik a beforesaveas és a beforeclose segítségével.

 

"Egy makróval meg bármikor le lehet kérdezni a dolgozói fájlokat, ki lehet benne térni hibalehetőségekre, többször is megismételhető a lekérdezés, ha valami miatt elsőre nem sikerül. Szóval én ezt biztosan makróval oldanám meg." - Hát erre gondolok én is, de nem tudom hogy milyen makrót és hogyan használjam.

 

"Talán létre kell hozni előre kamu dolgozói fájlokat, hogy a külső képlethivatkozások rendben legyenek, megcsinálni a képleteket úgy, hogy ha nincs érték a forrásfájlokban, akkor a képletek üres sztringet eredményezzenek..." - na de 70 dolgozó 10-10 fileját hozzam előre létre?, az akárhogyan is számolom 700 file; na ezen tépném a nem létező hajamat.

 

Ezért gondoltam a makrós megoldásra, amiben olyan feltételt kell szabni, hogy csak akkor töltődjenek ki az összegyűjtő táblázat cellái, ha a dolgozó létrehozta azt a file-t, amire hivatkozik az összegyűjtő file bizonyos cellája.  A kérdés, hogy milyet és hogyan?

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

Hát szerintem ez makróért kiált.

Képletezéssel nem nagyon lehet megoldani, hogy ne legyen a cellában semmi, csak ha már a dolgozó létrehozta az xy forrásfájlt. Max azt lehetne megoldani, hogy a beképletezett cellák tartalma semminek látszódjék. De szerintem a 3500 képlet nagy szívás lenne hosszú távon. Lelki szemeim előtt megjelenik egy haját tépő papamaci, aki három órás kutatás után jön rá, hogy azért nem működik a tökéletes képlet, mert a dolgozó véletlenül beletett egy plusz szóközt a fájlnévbe, kötőjel helyett alulvonást írt, nem a Munka1-ra, hanem a Munka2-re dolgozott, stb...

Ráadásul ha valamit véletlenül elrontasz és elmented, az úgy marad.

Egy makróval meg bármikor le lehet kérdezni a dolgozói fájlokat, ki lehet benne térni hibalehetőségekre, többször is megismételhető a lekérdezés, ha valami miatt elsőre nem sikerül. Szóval én ezt biztosan makróval oldanám meg.

 

Ezzel együtt nem kizárt, hogy képlettel is lehet... Talán létre kell hozni előre kamu dolgozói fájlokat, hogy a külső képlethivatkozások rendben legyenek, megcsinálni a képleteket úgy, hogy ha nincs érték a forrásfájlokban, akkor a képletek üres sztringet eredményezzenek, aztán törölni a kamu fájlokat, és imára kulcsolt kézzel remélni, hogy a dolgozók hibátlanul végezzék el az adatfeltöltést minden hónapban.

Előzmény: papamaci1980 (25482)
papamaci1980 Creative Commons License 2014.07.10 0 0 25482

Sziasztok!

Hogyan tudom megoldani excel 2010-ben az alábbi problémát?

 

Az alaphelyzet a következő: A dolgozók minden hónapban készítenek egy adattáblát. Az elkészült táblákból én össze kívánom gyűjteni az adatokat egy közös táblába. Azonban a közös összegyűjtő táblát már most meg szeretném csinálni előre 10 hónapra, hogy később ne kelljen vele havonta szórakoznom.

 

Most ha behivatkozom az összegyűjtő tábla celláiba a forrásfile celláit, akkor rögtön kéri a forrásfile elérési útját, ami azonban még nincs, hiszen ezután fogják csinálni a dolgozók. Ha nyomok egy „Mégse” gombot, akkor egy cellában átíródik a nem létező forrásfile neve (és lesz benne egy „#HIV” felirat, de ezt kb. 3500-szor kellene megcsinálnom, ami kicsit unalmas. Ezt szeretném kiküszöbölni.

 

Olyan feltételt szeretnék szabni az összegyűjtő táblázat összes hivatkozással ellátott cellájának kitöltéséhez, hogy csak azután írjon bele bármit is (na jó, a kért és hivatkozott adatot), miután a dolgozó létrehozta a hivatkozott forrásfilet.

 

A másik megoldandó probléma szintén ehhez kapcsolódik. Azt is meg kell valahogyan oldani, hogy ne egyesével kérdezgesse a frissítéseket, hanem egyszerre és automatikusan végezze azokat el, amikor megnyitom az összegyűjtő táblázatot.

 

Segítségeteket előre is köszönöm.

 

Ui.: az előző problémát sikerült megoldanom, köszönet érte a hozzászólóknak.

 

Fferi50 Creative Commons License 2014.07.10 0 0 25481

Szivesen, máskor is.

 

Sokat tanulhatsz a makrórögzítővel.

Ha egy rögzített makró működik, akkor azt itt a fórumon szivesen "optimalizáljuk" Neked, mert elég sok szokott lenni benne a "felesleges" lépés.

 

Üdv.

Előzmény: ND7000 (25480)
ND7000 Creative Commons License 2014.07.10 0 0 25480

Ez elképesztő :) működik ! :)

Meg kell tanulnom makrót írni, ez k*rva jó :)

 

El sem tudom mondani mennyire nagyon köszönöm !

 

 

Előzmény: Fferi50 (25479)
Fferi50 Creative Commons License 2014.07.10 0 0 25479

Szia!

 

Akkor maradjunk egyenlőre a T1 és S1 cellánál.

 

Private Sub CommandButton1_Click()
Dim mesternev As String, masolatnev As String, sor As Integer
mesternev = Cells(1, 1).Value
sor = 2
Do While Not IsEmpty(Cells(sor, 1))

     if range("T1").value<> range("S1").value then

        if dir(cells(sor,2).value & cells(sor,3).value,vbdirectory)="" then

           mkdir cells(sor,2).value & cells(sor,3).value

       endif

     endif
     FileCopy Source:=mesternev, Destination:=Cells(sor, 1).Value
     sor = sor + 1
Loop
range("S1").value=range("T1").value
End Sub

 

Remélem, működik.

 

Üdv.

Előzmény: ND7000 (25478)
ND7000 Creative Commons License 2014.07.10 0 0 25478

Próbálkoztam de nem jött össze, valszeg az általam elgondolt metódushoz nem passzol a folyamat.

Belenyúlni pedig nem tudok/merek :)

 

Mellékelek egy képet.

Az A1 cellában a mesterfájl útja.  A C2 cellában írom át a kívánt mappanevet,(lefele beírja mindenkiét mert ez azonos) . B oszlopban a szerver(ek) neve, (ami mindenhol különbőző :) ) E ben pedig a nevek, (azért így csináltam mert időnként változik). Ezeket összefűzi az A oszlopba, és a gombra kattintva megy a másolás.

Bemásoltam a T, és S cellákba amit írtál , és minden sorba a kódokat :), de nem műxik.

 

Most visszaállítottam mindent az eredetire, így működik, de csak akkor, ha előzőleg létrehozom a mappát.

 

Megkérlek szépen, ránéznél erre is, hátha van megoldás ? Köszönöm !!

 

Private Sub CommandButton1_Click()
Dim mesternev As String, masolatnev As String, sor As Integer
mesternev = Cells(1, 1).Value
sor = 2
Do While Not IsEmpty(Cells(sor, 1))
     FileCopy Source:=mesternev, Destination:=Cells(sor, 1).Value
     sor = sor + 1
Loop

End Sub

 

Előzmény: Fferi50 (25477)
Fferi50 Creative Commons License 2014.07.10 0 0 25477

Ha viszont mindenkinek más az alapútvonala, akkor a filecopy utasítás elé kell beírni ezt a sort

a for cikluson belül

 

if range("S1").value<>range("T1").value then mkdir range(utvonal cella).value & range("T1").value

 

A for ciklus után pedig:

ez a sor

range("S1").value=range("T1").value

 

Ezzel mindenkinek létrejön az új hónap mappája és utána másolódik bele.

 

 

Előzmény: Fferi50 (25476)
Fferi50 Creative Commons License 2014.07.10 0 0 25476

Szia!

 

Azért próbáljuk meg. Csak próbaképpen.

A hónap neve legyen mondjuk a T1 cellában (innen fűzi be a névhez). Ugyanezt a hónap nevet írd be az S1 cellába is konkrét név legyen mindkét helyen, nem képlet.

Mielőtt a másolás (for ciklus) elindulna, azaz a for  utasítás elé tedd be ezt a sort:

 

if range("S1").value<>range("T1").value then mkdir range(utvonal cella).value & range("T1").value:range("S1").value=range("T1").value

 

Az új hónapot pedig mindig a T1 cellába írd be, az S1 cellába ne. Ebből fogja tudni a makró, hogy új könytárat kell létrehoznia.

 

Természetesen a T1 és S1 cella csak egy javaslat, oda írd be, ahol neked megfelelő.

 

Remélem, sikerül.

 

Üdv.

Előzmény: ND7000 (25474)
maciti Creative Commons License 2014.07.10 0 0 25475

Köszönöm a segítséget. Így már mindjárt teszi a dolgát... A gombot úgy képzeltem, mintha lebegne a munkalap felett, és mindig ott marad aképernyőhöz viszonyítva, de így is tökéletes. Nem tudtam mik a lehetőségek ezzel kapcsolatban... Mégegyszer köszi a megoldást, nagyon tetszik!

Előzmény: Fferi50 (25472)
ND7000 Creative Commons License 2014.07.10 0 0 25474

Annyit csináltam, hogy a másoló fájlban beírtam az alap útvonalat egy oszlopba majd a hónap nevét egy oszlopba, és a neveket is, melyek összefűzve jelennek meg a A oszlopban, ami alapján megcsinálja  a makró a másolást.

 

Tuti, hogy nem tudom beilleszteni az MkDir utasítást a makróba helyesen, marad a manuális mappalétrehozás :) (ami már tényleg nem nagy munka)

Nem akarlak tovább fárasztani, így is nagyon sokat segítettél nekem !, Igazán hálás vagyok érte !!

 

Előzmény: Fferi50 (25473)
Fferi50 Creative Commons License 2014.07.10 0 0 25473

Szia!

 

Van egy olyan utasítás, hogy MkDir "könyvtárnév". Ez létrehozza az adott könyvtárat. Itt is megadhatod a teljes elérési útvonalat. Ha nem adod meg, akkor az aktuális könyvtárban hozza létre az alkönyvtárat.

 

Üdv.

Előzmény: ND7000 (25471)
Fferi50 Creative Commons License 2014.07.10 0 0 25472

Szia!

 

A gomb "helyben marasztása" érdekében a munka1 munkalap eseménykezelő kódjába írd be ezt:

 

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With ActiveSheet.Shapes("Button 2")
    .Top = ActiveWindow.VisibleRange.Cells(3, 5).Top + 3.75
    .Left = ActiveWindow.VisibleRange.Cells(3, 5).Left + 9
End With
End Sub

 

Jobb egérgomb a munkalap fülén - kód megjelenítése.

A bal oldali lenyílóban kiválasztod a worksheet -et.

Alatt megjelenik a fenti kód címsora és zárósora.

A kettő közé másold be a makrót (az első és utolsó sor nélkül).

 

Ha elgörgeted a képernyőt valamerre, akkor utána kattints rá egy cellára. A gomb "követni fog". Mindig az ablak eredeti helyének megfelelően jelenik meg.

 

Remélem, erre gondoltál.

 

Üdv.

Előzmény: maciti (25469)
ND7000 Creative Commons License 2014.07.10 0 0 25471

Még lehet egy olyan kérdésem/kérésem, hogy azt meg lehet -e oldani, hogy ha van olyan mappa ami az elérési útban nem szerepel azt hozza létre, és oda másolja a fájlt.

Ez jellemzően az útvonal utolsó mappája, ami a hónap nevére utal.

KÖszi

Előzmény: Fferi50 (25467)
Fferi50 Creative Commons License 2014.07.10 0 0 25470

Szia!

 

Makrónak próbáld ezt:

 

Sub Masolas_proba()
'
' Masolas_proba Makró
'
' Billentyűparancs: Ctrl+l
'
Dim sor As Long

With Range("a1").CurrentRegion
    sor = .Rows.Count
    .Rows(sor).Copy Range("A" & sor + 1)
    Range("D" & sor + 1).Formula = "=D" & sor
End With
End Sub

 

Esetedben a currentregion használható, mivel az A1 környezete tartalmazza a táblát, nincsenek üres sorok/oszlopok benne.

A hivatkozást pedig a formula megadásával érheted el.

 

A gomb "helyben marasztalása" egy kicsit macerásabb szerintem, még nézem.

 

Üdv.

 

 

Előzmény: maciti (25469)
maciti Creative Commons License 2014.07.10 0 0 25469

Sziasztok!

Kellene egy kis segítség. Egy olyan makrót írtam, ami egyszerűnek indult, de kicsit belebonyolódtam. Arról van szó, hogy egy excel táblában vannak adatok, melyekből egy-egy sort be kell másolni a többi után utolsónak. Ez sikerült is, mégpedig úgy,hogy amelyik cella ki van jelölve, azt a sort másolja. Azt viszont nem tudtam megoldani, hogy a másolt sor D oszlop cellája megegyezzen az új sor D cella tartalmával. Pontosabban ez egy hívatkozás legyen, ha az utóbbi változik akkor változzon a többi is, amelyikből van másolat. Lehet kicsit bonyolultan írtam, de belinkeltem a próbálkozást. És még azt is szerettem volna, ha az indító gomb mindig ugyanott marad a képernyőn, és nem gördül el a munkalappal. Ezt sem tudtam beállítani. Ha valaki tud valami ötletet, akkor megköszönném...

 

http://data.hu/get/7867763/Gep_berlet_proba.xlsm

 

 

ND7000 Creative Commons License 2014.07.09 0 0 25468

Na végül is sikerült, a probléma az volt, hogy makróbarát fájl-ként kellett elmentenem (.xlsm) kiterjesztéssel.

Ha sima fájlba mentem el, amiben a makró ugyan nincs letiltva , Path not found üzit kapok. Érdekes :)

 

Nagyon, nagyon köszönöm ! Tökéletes megoldás !

Előzmény: Fferi50 (25467)
Fferi50 Creative Commons License 2014.07.09 0 0 25467

Szia!

 

A stati.xls melyik könyvtárban van? Azt javaslom, hogy az A1 cellába is a teljes elérési utvonalat írd be, mert ha nem abban a könyvtárban van, amelyik most az aktív könyvtárad (ezt a curdir() függvény mutatja meg neked), akkor nem fogja megtalálni.

Ha viszont a teljes elérési út van beírva, akkor mindegy, hogy a makrót honnan indítod el.

 

Üdv.

Előzmény: ND7000 (25466)
ND7000 Creative Commons License 2014.07.09 0 0 25466

 

Elhiszem :)  (ezért is kérdeztem, hogy mit rontok el :) )

 

 

Előzmény: Fferi50 (25462)
Fferi50 Creative Commons License 2014.07.09 0 0 25465

Szia!

 

Az könnyen meglehet, a nyavalyás excel meg a Documents könyvtárat érti...

 

Üdv.

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

Biztos C:\Dokumentumok-kal kezdődik...

Előzmény: Fferi50 (25462)
Törölt nick Creative Commons License 2014.07.09 0 0 25463

Olyan is van, hogy SaveCopyAs.

:)

Előzmény: Delila10 (25455)
Fferi50 Creative Commons License 2014.07.09 0 0 25462

Szia!

 

Tudom, hogy hiába írom, de hidd el, nem adnék olyan példát, ami nálam nem működik.

 

Szeretném, ha egy képernyőképet betennél az A1-A3 cellákról, hogy meg tudjam nézni.

 

Köszi

Előzmény: ND7000 (25460)
Delila10 Creative Commons License 2014.07.09 0 0 25461

Mi az akadálya? :)

A FileCopy sor nálam is az ördögé.

Előzmény: Fferi50 (25457)
ND7000 Creative Commons License 2014.07.09 0 0 25460

Hogy érted, hogy aktív könyvtár ? ugyanabban a könyvtárban van a két fájl, és ugyanabba is adtam meg hogy másoljon.

 

megpróbáltam a stati.xls-t is teljes úttal ellátni de akkor az volt a hibaüzi, hogy path no found.

Előzmény: Fferi50 (25459)
Fferi50 Creative Commons License 2014.07.09 0 0 25459

Szia!

 

Kérdés, hogy melyik az aktív könyvtárad?

 

Ezért írtam, hogy a mesterfájlnak is a teljes elérési útvonal legyen a neve, mert akkor akárhonnan el tudod indítani a másolást, megtalálja.

 

Üdv.

 

 

Előzmény: ND7000 (25458)
ND7000 Creative Commons License 2014.07.09 0 0 25458

Én írtam oda, hogy idézet :)

 

Így néz ki a makro, nincs idézőjel benne.

 

Sub masolo()
Dim mesternev As String, masolatnev As String, sor As Integer
mesternev = Cells(1, 1).Value
sor = 2
Do While Not IsEmpty(Cells(sor, 1))
     FileCopy Source:=mesternev, Destination:=Cells(sor, 1).Value
     sor = sor + 1
Loop
End Sub

Előzmény: Fferi50 (25456)
Fferi50 Creative Commons License 2014.07.09 0 0 25457

Szia!

 

Azt nem írtam, hogy nem működik, csak azt, hogy problémát okozhat. És ahogyan később írta, nem lehet a mesterfájlban a makró (bár ezt a felvetéskor nem tette közzé).

 

De ezt nyilván megoldja, ha egy külön fájlba tesszük a saveas makrót, csak akkor egyrészt meg kell nyitni a mesterfájlt is, utána a saveas- a mesterfájlra kell, hogy hivatkozzon.

Végül be kell zárni a mesterfájlt mentés nélkül.

 

Nagyjából ennyi a pontosításom hozzá.

 

Üdv.

Előzmény: Delila10 (25455)
Fferi50 Creative Commons License 2014.07.09 0 0 25456

Szia!

 

Az idézőjelek miért kerültek oda???

 

Üdv.

 

Előzmény: ND7000 (25454)
Delila10 Creative Commons License 2014.07.09 0 0 25455

A SaveAs működik.

Igaz, az utoljára mentett néven lesz megnyitva, de az eredeti néven is megmarad az indító mappában.

Előzmény: ND7000 (25454)
ND7000 Creative Commons License 2014.07.09 0 0 25454

Igen észrevettem, ki is javítottam de így sem jó :)

 

A hibaüzi, nem találja a fájlt (file not found), pedig ott van, a név is egyezik (tutira).

 

Ezt a sort írja hibának továbbra is: FileCopy "Source:=mesternev, Destination:=Cells(sor, 1).Value"

 

Így néz ki most

 

Sub masolo()
Dim mesternev As String, masolatnev As String, sor As Integer
mesternev = Cells(1, 1).Value
sor = 2
Do While Not IsEmpty(Cells(sor, 1))
     FileCopy Source:=mesternev, Destination:=Cells(sor, 1).Value
     sor = sor + 1
Loop
End Sub

Előzmény: Fferi50 (25452)
Fferi50 Creative Commons License 2014.07.09 0 0 25453

Leginkább a mastername helyett a mesternev kellene.

 

 

Előzmény: Fferi50 (25452)
Fferi50 Creative Commons License 2014.07.09 0 0 25452

Szia!

 

Bocsi, nem figyeltem eléggé. Az egyik helyen mesternev, a másik helyen pedig mestername maradt....Sorry,sorry.

 

Javítsd valamelyiket légyszives.

 

Üdv.

 

 

Előzmény: ND7000 (25448)
Fferi50 Creative Commons License 2014.07.09 0 0 25451

Szia!

 

Milyen hibaüzenettel állt meg?

 

 

Előzmény: ND7000 (25448)
ND7000 Creative Commons License 2014.07.09 0 0 25450

A fenébe már, szóval a kettőspont és a folder után van egy-egy backslash

Előzmény: ND7000 (25449)
ND7000 Creative Commons License 2014.07.09 0 0 25449

Nekem is eltüntette a fórummotor a backslasht:

 

"c:folderpeti.xls"   igy írtam.

Előzmény: ND7000 (25448)
ND7000 Creative Commons License 2014.07.09 0 0 25448

Bocs, hogy nem figyeltem, valóban írtad.

 

Megcsináltam mindent, de nem működik (biztos én hibázok)

 

Csináltam egy külön foldert, ahova betettem a mesterfájlt (stati.xls) és a másoló munkafüzetet (copy.xls)

A copy fájlba úgy írtam be a makrót hogy rákattintottam a Visual Basicre, és a feljövő ablakba bemásoltam a kódot, majd mentés (jó így) ?

 

A copy.xls tartalma:

 

A1 cella: stati.xls   (az alap, másolandó fájl neve)

A2 cella: c:folderkati.xls

A3 cella: c:folderpeti.xls

 

A VB a FileCopy "Source:=mestername, Destination:=Cells(sor, 1).Value"  sort sárgázza be

 

Hol hibáztam ?

Előzmény: Fferi50 (25446)
magyarpityu Creative Commons License 2014.07.09 0 0 25447

Szia Fferi50!


Köszönöm, ez igazán hasznos segítség volt, már fel is használtam! :))

Előzmény: Fferi50 (25433)
Fferi50 Creative Commons License 2014.07.09 0 0 25446

Szia!

 

A 25442-ben írtam, hogy a másoló makrót nem a mesterfájlban kell elhelyezni, hanem egy másik munkafüzetben.

Ebben a másik munkafüzetben egy munkalapra beírod a mesterfájl teljes nevét (útvonallal) és a másolat fájlok nevét egy oszlopba (ezt is írhatod útvonallal, kiterjesztéssel és akkor nem kell ezekkel bajlódni a makróban).

(A példában az A1-ben van a mesterfájl neve, az A oszlopban pedig a másolat fájlok nevei - mind útvonallal és kiterjesztéssel.)

 

Ezután már lefuttathatod a makrót. Így nem lesz makró a mesterfájlban.

 

Sub masolo()

dim mesternev as string, masolatnev as string,sor as integer

mesternev=cells(1,1).value

sor=2

do while not isempty(cells(sor,1))

     filecopy  source:=mestername, destination:=cells(sor,1).value

     sor =sor+1

loop

end sub

 

Üdv.

Előzmény: ND7000 (25445)
ND7000 Creative Commons License 2014.07.09 0 0 25445

WOW, nem számítottam, ilyen "megoldás áradatra" :) Nagyon köszönöm !!

 

Ha jól értem akkor, egy makrót kell beletennem a mesterfájlba, (nem nagyon értek a makróhoz)  ezzel az a baj, hogy akkor mindegyikben lesz makró,hiszen önmagát másolja le. Azzal az a baj, hogy  alapból le  van tiltva minden gépen, tehát ha meg akarja nyitni, már rögtön kapja is a figyelmezetést. Tudom, hogy nem kell használnia, de ha hibaüzenetet látnak, jön a világvége :)

Előzmény: Fferi50 (25437)
Fferi50 Creative Commons License 2014.07.09 0 0 25444

Szia!

 

Menjünk visszafelé: 

Ha a fájlt csak olvasásra nyitod meg, akkor nem tud rámenteni, hanem automatikusan a mentés másként párbeszéd ablak jön fel.

Ezt elérheted pl. úgy, hogy a módosítást jelszóhoz kötöd, így aki nem tudja a jelszót, csak olvasásra tudja megnyitni. A jelszóhoz kötést a következőképpen tudod megoldani:

Fájl - mentés másként - eszközök - beállítások - jelszó a módosításhoz - a jelszó beírása és megerősítése után OK. Ekkor meg fogja kérdezni, hogy kicserélje-e a meglevő fájlt, erre igent kell mondani.

Ne feledd, ezután Te is csak a jelszó megadása után tudod úgy megnyitni a fájlt, hogy a módosításokat elmentsd.

 

A mentés helyét is többféleképpen tudod megadni, egyik lehetőség a chdir utasítással beállítani a kívánt könyvtárat aktuális könyvtárrá, a mentés (másként) először ezt a könyvtárat fogja felajánlani.

Megadhatsz egy útvonalat, amelyet a munkafüzet beforesave/beforeclose eseményében hozzácsatolsz a névhez és így oda fogja elmenteni.

 

A valamelyik munkalap neve legyen a fájl neve: A workbook.saveas utasításban a filename  legyen a kívánt név. Ugyanitt paraméterezheted, hogy milyen fájltipust mentsen el.

 

Az egész mentési procedúrát kötheted pl. a thisworkbook.beforeclose eseményéhez, ekkor bezárás előtt fogja végrehajtani, amit szeretnél (mentés vagy mentés másként, vagy kilépés mentés nélkül).

 

Üdv.

 

Előzmény: papamaci1980 (25443)
papamaci1980 Creative Commons License 2014.07.09 0 0 25443

Sziasztok!


Kérlek segítsetek az alábbi problémák megoldásában, mert megakadtam bennük.

Hogyan lehet azt lekódolni VBA-ban, hogy egy bármilyen néven megnyitott excel fájlnak a mentésekor valamelyik munkalapjának a nevét adja automatikusan és .xlsm kiterjesztést (vagy legalábbis azt ajánlja fel) az excel?

(Munka1-ről bizonyos feltételek teljesülése után sikerül átíratni a nevet, de én ezt az új nevet akarom a mentés másként esetén az egész file nevének adatni.)

 

Emellett még azt is meg kellene oldani, hogy automatikusan adja a mentés helyét, illetve a "sima" mentést nem lenne szabad engedni a felhasználó számára.


Ezekre is várok megoldási javaslatot.

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!