Cellakitöltés automatikus dátum/idő vel

Táblázatkezelő
Avatar
puma0812
Hozzászólások: 8
Csatlakozott: 2016. november 30., szerda 21:10

Cellakitöltés automatikus dátum/idő vel

Hozzászólás Szerző: puma0812 »

Sziasztok a mellékletben van egy exel

Abba van egy olyan oszlop hogy imei ha azt becsippantom a melette lévő cellába irja ki a pontos idejét mikor csippantottam be
Sima MS offic alatt ment csak mivel cégbe libre officet használunk ott ezek a makrok nem kompatibilisek
Tudna nekem ebben nekem valaki segiteni

Előre is köszönöm Üdv PUMA
Csatolmányok
LPTA_FINAL.ODS
(53.46 KiB) Letöltve 233 alkalommal.
LibreOffice 5.2 Windows 10 Pro
Avatar
Zizi64
Globális moderátorok
Hozzászólások: 4031
Csatlakozott: 2008. november 12., szerda 21:22
Tartózkodási hely: Budapest

Re: Cellakitöltés automatikus dátum/idő vel

Hozzászólás Szerző: Zizi64 »

Sziasztok a mellékletben van egy exel
Kis kiigazítás:
Egy táblázat (egy táblázatkezelő dokumentum) van a mellékletben, és nem "exel". Az Excel egy másik táblázatkezelő programnak a márkaneve, amiből a saját fájlformátumának a nevét képezték: .xls...
Az Apache OpenOffice és a LibreOffice Calc táblázatkezelő program alapértelmezett fájlformátuma az .ods, mint amit fel is töltöttél ide.

Néhány kérdés:
Mit jelent az, hogy "becsippantottál"? Egérkattintást hajtasz végre a cella fölött? Vagy arra gondolsz, hogy amikor változtatod egy cella tartalmát, akkor időbélyeg jelenjen meg a szomszédos cellában?


A VBA makrókat mind újra kell írnod, ha hatékonyan akarsz dolgozni a LibreOffice-szal. Az API függvényeket kell tanulmányoznod ehhez. Ezek adják a programcsomag tudását, és ezeket nem csak a szokásos kezelőszervekkel (eszköztárak ikonjai, menüpontok, gyorsbillentyűk) tudod működésre bírni, hanem programparancsokkal, függvényhívásokkal is. Programnyelvet, "környezetet" többfélét is használhatsz hozzá: StarBasic, Python, JavaScript, BeanShell. Csak a Basic-nek van beépített integrált fejlesztői környezete, a többit nehézkesebb használni az olyan felhasználónak, aki a VBA felől érkezett...

Most volt hasonló téma az angol fórumon, ha megtalálom, akkor idelinkelem neked.
Sok sikert!
Kovács Tibor (W10x64Pro/W7x64P: 7.5.8;
winPenPack/PortableApps: LO3.3.1-7.6.2, AOO4.1.14
Ha megoldódott a probléma, jelöld a témaindító hozzászólásod címének szerkesztésével. Írd elé: [Megoldva].
Avatar
puma0812
Hozzászólások: 8
Csatlakozott: 2016. november 30., szerda 21:10

Re: Cellakitöltés automatikus dátum/idő vel

Hozzászólás Szerző: puma0812 »

Scanner-el csippantok be vonalkodrol

És ilyen formában érdekelne
Elnázást a rossz kifejezésrt MS nál vagy csak exel elfelejtettem :)

csatolok egy képet is

Igy gondoltam
Csatolmányok
2016-11-30_23h58_52.png
2016-11-30_23h58_52.png (6.06 KiB) Megtekintve 8167 alkalommal
LibreOffice 5.2 Windows 10 Pro
Avatar
Zizi64
Globális moderátorok
Hozzászólások: 4031
Csatlakozott: 2008. november 12., szerda 21:22
Tartózkodási hely: Budapest

Re: Cellakitöltés automatikus dátum/idő vel

Hozzászólás Szerző: Zizi64 »

Ha megoldható nálad a fix listából való kitöltés, akkor ajánlom neked az angol fórumon javasolt megoldásomat:
https://forum.openoffice.org/en/forum/v ... 20&t=85972

Ez esetben a kitöltést a Combobox és az ahhoz rendelt makró végzi, neked csak a "imei" célcellát kell kijelölni, és azután a ComboBoxban ki kell választani a beírandó imei számot. A makró a kijelölt cellába helyezi a kiválasztott számot, és a mellette lévő cellába pedig az időbélyeget.

...De egyéb eseményfigyelő megoldások is léteznek, de azok kissé bonyolultabbak.
Sok sikert!
Kovács Tibor (W10x64Pro/W7x64P: 7.5.8;
winPenPack/PortableApps: LO3.3.1-7.6.2, AOO4.1.14
Ha megoldódott a probléma, jelöld a témaindító hozzászólásod címének szerkesztésével. Írd elé: [Megoldva].
Avatar
puma0812
Hozzászólások: 8
Csatlakozott: 2016. november 30., szerda 21:10

Re: Cellakitöltés automatikus dátum/idő vel

Hozzászólás Szerző: puma0812 »

Rendben köszönöm a gyors válaszod reggel megnézem és megirom mire jutottam (csakmár nagyon álmos vagyok ) :(
További szép etét
LibreOffice 5.2 Windows 10 Pro
Avatar
Zizi64
Globális moderátorok
Hozzászólások: 4031
Csatlakozott: 2008. november 12., szerda 21:22
Tartózkodási hely: Budapest

Re: Cellakitöltés automatikus dátum/idő vel

Hozzászólás Szerző: Zizi64 »

Scanner-el csippantok be vonalkodrol
Ez esetben egész más a dolog lényege!
Azt mi vezérli, hogy a vonalkód a megfelelő cellába kerüljön? Ezt az eseményt kellene fölhasználnod, oda kellene kapcsolódnod a makróval, ami az aktuális cellaadatok alapján megállapítja, hogy melyik a szomszédos cella, és abba beteszi az időbélyeget.

Az időbélyeg berakás nem nehéz dolog: a NOW() függvény értékét kell fix érték formájában beállítanod az adott cella számértékeként, az oszlopot pedig jó előre egy saját Cellastílussal Dátumidő-ként megformázni.
Sok sikert!
Kovács Tibor (W10x64Pro/W7x64P: 7.5.8;
winPenPack/PortableApps: LO3.3.1-7.6.2, AOO4.1.14
Ha megoldódott a probléma, jelöld a témaindító hozzászólásod címének szerkesztésével. Írd elé: [Megoldva].
Avatar
Zizi64
Globális moderátorok
Hozzászólások: 4031
Csatlakozott: 2008. november 12., szerda 21:22
Tartózkodási hely: Budapest

Re: Cellakitöltés automatikus dátum/idő vel

Hozzászólás Szerző: Zizi64 »

A te fájlodban található rengeteg bosszantó VBA makró üzemen kívül helyezésével, módosításával nem akarok foglalkozni, ezért egy lapot átmásoltam a fájlodból egy új Munkafüzetbe, amiben semmilyen makró nem volt.
Így a Munkalapnak azonos a struktúrája a tiéddel. Az egyetlen általam megírt Makró Szubrutin a fájlban van eltárolva, és hozzá van rendelve a munkalap állapotának megváltozására aktivizálódó eseményhez. Ezt a munkalap fülén jobb egérgomb kattintás után tudod megvalósítani.
Amikor ez az esemény bekövetkezik, a makró elindul, és beolvassa, hogy melyik cella lett megváltoztatva. Ha a megváltozott cella benne van a beviteli (imei) cellatartományban, akkor folytatja a munkát: megvizsgálja, hogy éppen törölted, vagy kitöltötted a cellát. Kiszámolja, hogy melyik a hozzá képest jobbra eső szomszédos cella. Kitöltés esetében a szomszédos cellába a dátum-idő értéket helyezi bele, törlés esetében pedig törli a szomszédos cella tartalmát is (csak a tartalmát, de abból minden fajtát - szöveget, számértéket, dátumot, képletet: 23-as kód).

Csakis egyesével töltheted ki az imei beviteli cellákat és csakis egyesével törölheted az eddig "becsippantott" adatokat, mert a cellák csoportos törlése nincs lekezelve a makróban. Ha erre is szükséged van, akkor annak megvalósítását már rád bízom.
Eseményfigyelő.ods
(18.6 KiB) Letöltve 257 alkalommal.
Csak kézi adatbevitellel tudtam kipróbálni a működést. De remélem, hogy a "megváltozott" esemény bekövetkezik a "csippantásos" beviteli módszer használata esetén is.
Sok sikert!
Kovács Tibor (W10x64Pro/W7x64P: 7.5.8;
winPenPack/PortableApps: LO3.3.1-7.6.2, AOO4.1.14
Ha megoldódott a probléma, jelöld a témaindító hozzászólásod címének szerkesztésével. Írd elé: [Megoldva].
Avatar
puma0812
Hozzászólások: 8
Csatlakozott: 2016. november 30., szerda 21:10

Re: Cellakitöltés automatikus dátum/idő vel

Hozzászólás Szerző: puma0812 »

Szia meg néztem nagyon jó,
Kérdésem ami a régi exelbe volt egy heti összesítö gomb azt ebbe is bele lehet tenni ?
C7-G206 értékeit aátmásolja a Heti fülre?


Előre is köszönöm
Csatolmányok
Eseményfigyelő_heti.ods
(34.99 KiB) Letöltve 191 alkalommal.
LibreOffice 5.2 Windows 10 Pro
Avatar
Zizi64
Globális moderátorok
Hozzászólások: 4031
Csatlakozott: 2008. november 12., szerda 21:22
Tartózkodási hely: Budapest

Re: Cellakitöltés automatikus dátum/idő vel

Hozzászólás Szerző: Zizi64 »

Kérdésem ami a régi exelbe volt egy heti összesítö gomb azt ebbe is bele lehet tenni ?
C7-G206 értékeit aátmásolja a Heti fülre?
Persze, lehet gombot vagy egyéb vezérlő elemet használni a Calcban is (Form Control element).
Igen, lehet makrót is rendelni a vezérlő elem előre definiált eseményeihez.

De minden makrót nem fogok helyetted megírni. Egyrészt egy ilyen "statikus makrót" fel tudsz venni a makrórögzítővel is, ha végképp nem értesz a programozáshoz, másrészt ha makrókat akarsz használni, és a te feladatod azokat létrehozni, akkor elkerülhetetlen, hogy tanulmányozd az API függvényeket és azoknak a meghívási módját.

Erre ott vannak az API leírások, és Andrew Pitonyak ingyenesen elérhető könyvei - tele jobbnál jobb példákkal. Itt van aztán ez a fórum, (meg az angol nyelvű, meg a többi nyelvű) is, ahol ilyen másolási makró példák tömegével fordultak már elő. Tessék rákeresni, tanulni, majd pedig kipróbálni, alkalmazni a tudást!
Sok sikert!
Kovács Tibor (W10x64Pro/W7x64P: 7.5.8;
winPenPack/PortableApps: LO3.3.1-7.6.2, AOO4.1.14
Ha megoldódott a probléma, jelöld a témaindító hozzászólásod címének szerkesztésével. Írd elé: [Megoldva].
Avatar
Zizi64
Globális moderátorok
Hozzászólások: 4031
Csatlakozott: 2008. november 12., szerda 21:22
Tartózkodási hely: Budapest

Re: Cellakitöltés automatikus dátum/idő vel

Hozzászólás Szerző: Zizi64 »

Egyébként - ahogy nézem -, az újabb példafájlodban még nem is rendelted hozzá a makrót a többi napi fülhöz (lehet, hogy igazítanod kell a makrón; de lehet, hogy minden gond nélkül működni fog a többi munkalapfülhöz rendelve is...

Egyébként mi lenne a feladat? Vagy azt is én bogarásszam ki a régi VBA makróból? Miket kellene átmásolni? Helyi, napi összegeket? Nem elegendő hivatkozásokkal (makró nélküli) összegzést használni a "Heti" lapon? Vagy minden egyes bevitt adatot egyetlen fülre (munkalapra) kellene másolnod? Vagy a "becsippantás" nem folyamatosan tölti ki a táblázatot, és másolás előtt szűrni is kellene az adatokat?

...

Egyébként meg az első fájlod "Heti összesítő" gombjához rendelt makró FUT a LibreOffice-ban is! Hogy jól működik-e, azt neked kell megállapítani.
A VBA makróknak egy részét (nyilván az egyszerűbbeket, az általánosabb funkciókat megvalósítókat) képes a LibreOffice futtatni (értelmezni és helyettesíteni API függvényhívásokkal).
Vigyázz: az Apache OpenOffice ilyen szempontból jóval kevésbé kompatibilis az Excel MS VBA funkciójával, mint a LibreOffice!

Az

Kód: Egész kijelölése

Option VBASupport 1
direktíva - amit a régi kódban látok a Module3 programmodulban - éppen arra való, hogy megpróbálja "megetetni" a LibreOffice-szal a VBA makróknak azt a részét, ami viszonylag egyszerűen és automatikusan helyettesíthető API függvényhívásokkal.
Sok sikert!
Kovács Tibor (W10x64Pro/W7x64P: 7.5.8;
winPenPack/PortableApps: LO3.3.1-7.6.2, AOO4.1.14
Ha megoldódott a probléma, jelöld a témaindító hozzászólásod címének szerkesztésével. Írd elé: [Megoldva].
Avatar
puma0812
Hozzászólások: 8
Csatlakozott: 2016. november 30., szerda 21:10

Re: Cellakitöltés automatikus dátum/idő vel

Hozzászólás Szerző: puma0812 »

Szia
Végülis az lenne a a föbb feladat ami a hétfőin is látod be van irva mondjuk egy imei szám (ha 2 eggyező akkor jelölje pirossal)--> mikor lett berögzizve--> teszten OK vagy NOK (HA Ok akkor ZÖLD/Ha nok akkor piros)-- végén számolja a db ot
ez igy minden nap hetö összesitő meg az lenne hogy összegyüjtené (H,k,Sz,Cs,P,Sz) cella adatait a C7-G206 sorba egymás alá
Pl a
-hétfői Kezdödjön a A2 be
-Keddi Kezdödöjön ahol a hétfő végzödött

erre irtam ezt a makrot ms officba:

Kód: Egész kijelölése

Sub Gomb19_Click()
MsgBox "Türelem a  hosszú élet ritka"
Worksheets("Hétfő").Range("C7:G206").Copy Worksheets("Heti").Range("A2")
Worksheets("Kedd").Range("C7:G206").Copy Worksheets("Heti").Range("A202")
Worksheets("Szerda").Range("C7:G206").Copy Worksheets("Heti").Range("A402")
Worksheets("Csütörtök").Range("C7:G206").Copy Worksheets("Heti").Range("A602")
Worksheets("Péntek").Range("C7:G206").Copy Worksheets("Heti").Range("A802")
Worksheets("Szombat").Range("C7:G206").Copy Worksheets("Heti").Range("A1002")
MsgBox "Látom nem bírtad  tovább" & vbNewLine & "Na jó, a heti  összesítő elkészült  :)"
End Sub
egy kis humoros szöveggel

És a végén már csak a Heti böl lesz egy kimutatás de azt már meg tudom oldani csak Én Ms offiet tanultam nem libret és más a 2 program nyelve sajnos :(
Most tanulhatom meg ezt is
LibreOffice 5.2 Windows 10 Pro
Avatar
Zizi64
Globális moderátorok
Hozzászólások: 4031
Csatlakozott: 2008. november 12., szerda 21:22
Tartózkodási hely: Budapest

Re: Cellakitöltés automatikus dátum/idő vel

Hozzászólás Szerző: Zizi64 »

csak Én Ms offiet tanultam nem libret és más a 2 program nyelve sajnos :(
A program "nyelve" (értsd: a vezérléséhez használt programnyelv egyike, a BASIC) gyakorlatilag azonos.
Hiszen nézd csak meg: mit használtam én a példamakrómban a Basic tudásából? Csupán a Változódeklarálást (Dim...) és az "If...Then... (Else...) end If" vizsgálatot. Meg azt, hogy objektum-orientált, mint minden valamirevaló programnyelv. Semmi mást.

Ezeket a VBA és a StarBasic is ugyanúgy tudja. De amíg az MS Office programnál a Basic kevés számú utasításai közé "begyúrták" a programspecifikus függvényeket is (Ezért lett a megkülönböztető neve VBA azaz: Visual Basic for Applications), addig a LibreOffice-nak és elődjeinek fejlesztői világosan látták, hogy a vezérléshez használt programnyelvet, és a Calc, Writer "belső tudását" élesen el kell különíteni egymástól. Így vált lehetővé, hogy bármilyen más programnyelvből, bármilyen más operációs rendszer alatt is meg tudod hívni a LibreOffice API (Application Programming Interface) függvényeit, eljárásait. Ez alapvető dolog egy multiplatformos szoftvercsomag esetében.

...

Az általad ide feltöltött szubrutin NEM azt csinálja már Excelben sem, amit elvársz tőle. Ez a makró rutin - függetlenül attól, hogy mennyi sort töltöttél fel a napi munkalapokon -, átmásol egy-egy mereven kijelölt tartományt az összesítő lapra. Te meg azt írod, hogy
-hétfői Kezdödjön a A2 be
-Keddi Kezdödöjön ahol a hétfő végzödött
...
Nos, a te VBA makród nem tudja ezt. Persze én csak LibreOffice-on tudom kipróbálni, Excelem nincs már több, mint egy évtizede... Keress rá (angolul is!) az "utolsó kitöltött cella megállapítása" vagy hasonló kifejezésre (persze az AOO vagy a LO és a makró szavak hivatkozásával együtt).
Mert természetesen azt is meg lehet valósítani, amit te elvársz.
De ahhoz jó néhány apró részletet tisztázni kell, mielőtt nekifogsz:
- Mindig üres-e a céltartomány a makró futtatása előtt?
- Ha nem, akkor felülírhatók-e az ott lévő adatok, vagy már eleve hozzáfűzéssel kell kezdeni?
- A másolandó cellatartomány hézag nélkül tartalmaz adatokat, vagy hézagokkal, mint a példafájlodban?
- Mit kell kezdeni a hézagokkal? elég lesz azokat kézzel leszűrni a célterületen, vagy már eleve ki kell hagyni a másolásból?
- Stb, stb...


...
Most tanulhatom meg ezt is
IGEN, egyetértek - már ami az API függvényeket illeti.

A két programcsomag táblázatkezelő alkalmazásának csak a végeredménye (magának a táblázat fájlnak a kinézete), és a kezelői felülete (az meg csak volt) nagyon hasonló, a működése sohasem. Az AOO és a LO nem MS Office klónok!
Sok sikert!
Kovács Tibor (W10x64Pro/W7x64P: 7.5.8;
winPenPack/PortableApps: LO3.3.1-7.6.2, AOO4.1.14
Ha megoldódott a probléma, jelöld a témaindító hozzászólásod címének szerkesztésével. Írd elé: [Megoldva].
Avatar
puma0812
Hozzászólások: 8
Csatlakozott: 2016. november 30., szerda 21:10

Re: Cellakitöltés automatikus dátum/idő vel

Hozzászólás Szerző: puma0812 »

Igen a célállomás mindig üres csak a hét utolso napján lesz generálva de az se gond ha felülirja a régit ugyis minden héten uj üres tábla készül. Hézag csak az utolso elötti lenne a megjegyzés mezö mert az OK esetén nem ledz töltve
Annak elég lesz ha le van szürve
Amit legelöyzör csinaltam ott a lekérdezés fut a makroval de csak xls formatumba
Ha odd be akkor ugye bár nem.elérhető.
LibreOffice 5.2 Windows 10 Pro
Avatar
puma0812
Hozzászólások: 8
Csatlakozott: 2016. november 30., szerda 21:10

Re: Cellakitöltés automatikus dátum/idő vel

Hozzászólás Szerző: puma0812 »

Jah hogy hát lehet lesznek üres sorok mivel a z órai limit az 25 db a max de lehet hogy az adott orába pl 20 csinál meg akkor 5 sor üresen marad
azt mondjuk kihagyhatja a másolásbol
de végülis nem muszáj kihagyni se mivel a heti lapon h rászűrök akkor üres cellákat nem jelenitem meg kiveszem akkor már meg se jelenik ott nekem
LibreOffice 5.2 Windows 10 Pro
Avatar
Zizi64
Globális moderátorok
Hozzászólások: 4031
Csatlakozott: 2008. november 12., szerda 21:22
Tartózkodási hely: Budapest

Re: Cellakitöltés automatikus dátum/idő vel

Hozzászólás Szerző: Zizi64 »

Jah hogy hát lehet lesznek üres sorok mivel a z órai limit az 25 db a max de lehet hogy az adott orába pl 20 csinál meg akkor 5 sor üresen marad
azt mondjuk kihagyhatja a másolásbol
Akkor: rajta, fogj hozzá! Kezdd Pitonyak könyveivel!

de végülis nem muszáj kihagyni se mivel a heti lapon h rászűrök akkor üres cellákat nem jelenitem meg kiveszem akkor már meg se jelenik ott nekem
Ebben az esetben a meglévő, és futni képes VBA kód is megfelelő neked: Módosítsd ha szükséges, és használd!
...vagy rögzíts egy új, Dispatcher-es makrót a makrórögzítővel...

...

További segítő szándékú kérdések (a jól irányzott kérdések mindig sokat segítenek, ha a fogadónak van füle hozzá...):
A kódolvasóról érkező adatokat mi vezérli, hogy a megfelelő cellába kerüljenek? Más szóval: Ha egy órába kevesebb adat kerül, akkor mitől fogja kihagyni a megfelelő számú sort?
Vagy ez manuálisan történik? A Felhasználónak kell belekattintania a szkennelés előtt minden egyes cellába, amibe az adatokat akarja "becsippantani"?
Vagy "sor emelni" tud a scanner a folyamatos adatbevitelhez, és csak a kihagyott sorok esetében kell beavatkozni a Felhasználónak?
Sok sikert!
Kovács Tibor (W10x64Pro/W7x64P: 7.5.8;
winPenPack/PortableApps: LO3.3.1-7.6.2, AOO4.1.14
Ha megoldódott a probléma, jelöld a témaindító hozzászólásod címének szerkesztésével. Írd elé: [Megoldva].
Válasz küldése