-
Fototrend
A Microsoft Excel topic célja segítséget kérni és nyújtani Excellel kapcsolatos problémákra.
Kérdés felvetése előtt olvasd el, ha még nem tetted.
Új hozzászólás Aktív témák
-
Csatravi
senior tag
válasz
Fferi50 #36836 üzenetére
Nem vitatom, hogy akár keverem is a dolgokat. Sajna nem értek hozzá.
És igaz, hogy a nem létező adat az nem hibás adat. Igaz én oda soroltam. Azt szeretném elkerülni hogy hibás adatként megfelelő visszajelzés legyen. Viszont a nem létező adatnál a felhasználó a nem létező adatnál is kellően figyelmeztetve legyen hogy rossz karakter sorozatot írt be. Csak nem értettem, hogy a K000 nem létező adatra megjött a figyelmeztetés a K123 nem létezőre pedig nem. -
-
Csatravi
senior tag
válasz
Fferi50 #36817 üzenetére
Nekiálltam próbálgatni ahogy a https://logout.hu/tema/excel/hsz_36815-36815.html írtam.
Azt vettem észre, hogy ha jól írok be mindent akkor frankó.
Ha 1 betűt és csak 2 számot tehát hibásan akkor szépen jelez.[kép] Ez így jó.
Viszont ha pld egy betűt és utána 4-5 számot vagy csak számokat írok be akkor nem írja ki a C2-be hogy "Hibás adat" és "Hibás keresés."
[kép] -
Csatravi
senior tag
válasz
Fferi50 #36813 üzenetére
Sajna nem értek hozzá
de ebből már sikerült valamit összeraknom.
A B4-hez beírtam a =HA(C2="HIBÁS ADAT";" kezdetű sort.
A C2-be a =HA(HIBÁS((ÉS(VAGY(ÉS(KÓD..... sortÍgy ha rossz formátumban írok be akkor....
[kép]Ha jó formátumban de olyan adatot ami nincs az első oszlopban akkor...
[kép]A kis és nagybetűre is egyformán jól keres.
Köszönöm !
-
Csatravi
senior tag
válasz
Fferi50 #36807 üzenetére
Beírtam így és működik, feljön a hibaüzenet.
[kép]A működés már jó de a figyelmeztetéssel van még gondom.
A 7-16 sorok rejtve lesznek tehát az adatok nem fognak látszódni.A végleges verzióban kb 20000 sor lesz rejtve. Így csak szinte a keresési és találati cella lesz látható. Terv szerint A1:E7-ig. kerül a képernyőre mivel mobil képernyőre lenne tervezve. Így ez a nagy hibaüzenet kívül esne a képernyő méretből és így a képet húzogatni kellene.
Ezért gondoltam az egy cellában megjelenő hiba jelzésére. Ez megoldható lenne ?
A másik a betű mérete. Megoldható, hogy mindegy legyen, hogy mit használ ? -
CsoGe
csendes tag
válasz
Fferi50 #36743 üzenetére
Hali!
Így nézett ki eddig a makró:
Sub LPA_2018()
Randomize
For i = 3 To 7
For j = 5 To 5
Cells(i, j) = Int((153 * Rnd) + 1)
Next
Next
End SubA válaszod alapján nekem a For i=3-as sor így nézne ki:
For i = Range("E1").End(xlDown).Offset(1,0Valamit tuti, hogy félre értek...
Köszi,
Gergő -
Sesy
aktív tag
-
Sesy
aktív tag
válasz
Fferi50 #36704 üzenetére
"Ezért a csak szöveget kell beillesztésnél választani."
Ha ezt választom, akkor viszont megszűnik a kapcsolat a forrás fájllal
tehát ez nem jó
"Ha a forrásformátum megőrzését választod, akkor bizony belekerül."
az a baj, hogy akkor is bele kerül, ha a formázás egyesítését választom, vagyis minden esetben ha a kapcsolatot meg akarom tartani az excel fájlommal...
Ki lehet ezeket szedni valahogyan?
A körlevéllel az a baj, hogy ha az adatok a beillesztésre kerülő cellában több sorban vannak akkor teljesen meghülyül tőle...
Érdekes, hogy a probléma nem túl bonyolult, mégsem lehet egyszerűen megoldani...
-
Delila_1
veterán
válasz
Fferi50 #36701 üzenetére
Egyszerűbb a Csere funkciót (Ctrl+h) alkalmazni, az minden oszlopban cserél, nem kell oszloponként bevinni a HELYETTE függvényt.
Az adatokhoz felvennék egy új oszlopot, ahol pl. egy *-ot tennék azokba a rekordokba, amelyeket a körlevélbe aktuálisan be akarok tenni. Ez lenne a feltétel a rekordok kiválasztásához az összefésülésnél.
-
Sesy
aktív tag
válasz
Fferi50 #36699 üzenetére
köszi
én is erre jutottam közbenaz még a kérdés, ha egy cellában több sorban vannak az adatok, akkor ha átviszem wordbe akkor meghülyül tőle
teljesen szét dobja a megformázott oldalamat... mit tegyek
be lehet azt állítani, hogy egy cellában milyen beállításokkal szerepeljen a szöveg, ha onnan viszem át a wordbe?
ha átviszek egy cellából egy szöveget a dokumentum fájlba, akkor olyan, mintha formázott szöveg lenne
pl: térköz előtte/utána stb... ezzel lehet kezdeni valamit? például csak egy normál formázatlan arial 10 betűméretű balra rendezett szöveget hozzon át? -
Sesy
aktív tag
válasz
Fferi50 #36697 üzenetére
Köszi,
ez meg van, és működik is
ezzel egy építőanyag tulajdonságait (bármennyit) amelyek egy sorban vannak simán be tudom már olvasniha jól értem, akkor egy fejlécet és egy sort tudok egy adott dokumentumon belül használni, mert
a második sor már másik "levelet" jelent...most már csak azt kell megoldanom, hogy egy dokumentumon belül 20-25 építőanyag tulajdonságot tudjak automatikusan megadni
amelyek ugyan abból az excelből jönnek, és ugyan abban a doc fájlban vannak
-
Sesy
aktív tag
válasz
Fferi50 #36685 üzenetére
Megpróbáltam megcsinálni, erre gondoltál?
egy másik munkalapon vannak az adatok, és fkeres függvénnyel töltöm ki a sort
az excel fájlt választva címjegyzéknek a körlevélnél azt a munkalap tábéát választom, ahol ez a táblázat szerepel...
ez lesz belőle:
ez eddig szép és jó, de ha az excelben módosítok a legördülő menüben egy másik építőanyagra, akkor a wordben nem történik semmi, nem frissül az adat
csak úgy tudtam, megcsinálni, hogy újra beillesztettem... valószínűleg rosszul csinálom -
fricc_
tag
válasz
Fferi50 #36567 üzenetére
Köszönöm, az első megoldást értem és működik is.
A fix n=2 csak a debug miatt volt bent :-)
Viszont mivel nyitott vagyok minden újra, főleg amit nem ismerek, kipróbáltam a másik két megoldást is, de a programba beillesztve nem tudtam működésre bírni.
Talán az alábbi két megoldást ki kéne még egészíteni valamivel?
A te 2. javaslatod:
Dim cl As Range
For Each cl in Rows(5).Cells :if cl.EntireColumn.Hidden Then
n=cl.Column :Exit Forill. Pakliman megoldása:
For Each cl in Rows(5).Columns: If cl.Hidden Then
-
Kobe
veterán
válasz
Fferi50 #36555 üzenetére
megoldottam közben, most már fut rendesen
Viszont olyan problémába ütköztem, hogy az egész makrót egy xlam add-inba mentettem VBA projektként. A makró csinál egy custom ribbot tabot ahova bevágja a parancsgombokat, és autoamtikusan ez indulna el, ha az addint elindítom
Azt hogy betöltse a custom ribbont, a ThisWorkbook on belül hviatkoztam meg
Private Sub Workbook_Open()
Call LoadCustRibbon
End SubPrivate Sub Workbook_BeforeClose(Cancel As Boolean)
Call ClearCustRibbon
End Subviszont az xlam-ban induláskor ugye nincs workbook, emiatt nem tölti be.Hogyan, vagy hol kellene másképp emghivatkozni, hogy mégis a ribbonra kerüljenek ?
-
foregister
tag
válasz
Fferi50 #36550 üzenetére
Mindennapos szociológiai logikát ne keress mögötte, tekints a jellemre úgy, hogy megjeleníteni kívánt információ egy felületen, de ettől függetlenül, szeretnénk ebben a táblázatban azt is nyilvántartani, hogy hány féle vagy hány darab jellemet tudunk egy-egy adott tulajdonsággal rendelkező személynek megjeleníteni.
Induljunk ki a forrás első jellem sorából ("Jellem 1"):
- ez a jellem igaz lesz akkor is, ha 30-40 éves párkapcsolatban élő gyerekes férfiről (2. tábla 15. sora) beszélünk, akkor is ha 41-55 éves családos gyermektelen nőről (2. tábla 20. sora), de
- akkor már nem igaz a feltétel, ha 30-40 egyedülálló gyerekes férfiről van szó (2. tábla 11. sora) (hiszen az egyedülálló nincs jelölve).Ezt szeretném a második táblán kiszámolni, hogy hány darab, az 1. tábla első oszlopbán lévő jellem (vagy adat) tartozik hozzá.
Így sikerült picit tisztáznom?
-
fricc_
tag
válasz
Fferi50 #36542 üzenetére
Köszönöm, viszont kellene még egy kis segítség.
Amit írtál működik, viszont én úgy képzeltem el, hogy a példánál maradva végig kell vizsgálni a teljes 5-ös sort nincs-e elrejtve egy oszlop..
Ha elrejtem a D-s oszlopot akkor ez a makro i=10 n=2 vel fut le.
Azt gondoltam i=4-nél teljesül a feltétel, és n felveszi i értékét de mégsem.
Mit írtam rosszul?Dim i, n As Integer
i = 1
n = 0
For i = 1 To 10
If Range("i5").EntireColumn.Hidden Then
n = i
Exit For
End If
NextIf Range("D5").EntireColumn.Hidden Then
n = 2
End If
End Sub -
Angerfis
csendes tag
válasz
Fferi50 #36543 üzenetére
Szia
Köszönöm a válaszod.Ha jól értem akkor ebben az esetben az alapértelmezett nyomtatót használná?
De a baj a következő hogy több nyomtató is van és minden képen ez a nyomtató kellene mert csak ez tud két oldalasan nyomtatni.Esetleg lenne valami ötleted hogy lehetne megírni a makrót?
Előre is köszönöm a válaszod. -
Kobe
veterán
válasz
Fferi50 #36546 üzenetére
Az exit for - t kiveszem
Van egy kulon sor, a letoltes parancs utolso sora, ami el is nevezi rogton a friss munkalapot valami_a_46 ra
Csak a kovetkezo torles pont a frissen letoltott tabot torli minden mast nem, nekem pedig forditva kene - csak a friss, uj worksheet maradjon meg, minden mas kuka
-
Ghoosty
őstag
válasz
Fferi50 #36548 üzenetére
Az ötlet jó, csak a konkrét feladat nagyon megbonyolítja, mert változó karakterhosszok vannak és nem csak 3 celláról van szó. Majd megbeszélem vele, mit tud bevállalni, maradhat-e a képlet, vagy értékként átírható. Egyáltalán fontos-e ez annyira, hogy órákat töltsek a makróval.
Köszönöm.
-
bsh
addikt
válasz
Fferi50 #36510 üzenetére
helló,
sajnos még mindig csak részben működik ez a függvény. így néz most ki:Public Function KKERES() As Double
KKERES = 0
If TypeOf Application.Caller Is Range Then
Dim Cllr As Range
Set Cllr = Application.Caller
Dim Z As String
ZNr = Munka2.Cells(Cllr.Row, 2).Text
If Z <> "" Then
Dim X As Variant, Y As Variant
X = Application.Match(Z, Munka3.Range("B:B"), 0)
If IsError(X) Then
Y = Application.Match(Z, Munka4.Range("B:B"), 0)
If IsError(Y) Then Y = Application.Match(Z, Munka4.Range("C:C"), 0)
If IsError(Y) Then
KKERES = 0
Exit Function
Else
If Cllr.Column = 5 Then
KKERES = Munka4.Cells(Y, 5).Value
Exit Function
End If
If Cllr.Column = 6 Then
KKERES = Munka4.Cells(Y, 6).Value
Exit Function
End If
End If
Else
If Cllr.Column = 5 Then
KKERES = Munka3.Cells(X, 5).Value
Exit Function
End If
If Cllr.Column = 6 Then
KKERES = Munka3.Cells(X, 6).Value
Exit Function
End If
End If
End If
End If
End Function
az én gépemen (office 2013) látszólag működik, de teszteltem egy office2016-os gépen, és ott sok cellára #ÉRTÉK-et ad vissza meg hibát dob a VB. megnéztem egy office2010-es gépen is, ott is jól működik.
lehet valami O2016-nál ami máshogyan működik mint a korábbi verzióknál?(sajnos most nincs szabad o2016 gép debuggolni.)
-
Dilikutya
félisten
válasz
Fferi50 #36382 üzenetére
Pontosítok, azt hiszem, rosszul fogalmaztam. Nem komplett táblákra, csak olyan mezőkre kell gondolni, ami lentebb is van. Konkrétan egy kérdőív egy kérdése 3 válaszlehetőséggel. A kérdőívet 20 helyen töltették ki, kétféle válaszadói csoporttal. A diagramnak úgy kell kinéznie, hogy telephelyenként két vízszintes halmozott sáv legyen, egyik sáv az egyik csoport, másik sáv a másik, a sávok pedig a 3 kérdésre adott válaszok százalékos arányait tartalmazzák. Telephelyenként meg tudom csinálni, de a 20 telephely egy diagramban egymás alá nem megy úgy, ahogy kérnék. Menni megy szépen egymás alá, de nem tudom színekkel megkülönböztetni egyik válaszadói csoportot a másiktól (ez a gyakorlatban zebracsíkos diagramként nézne ki, egyik csoport pl. a piros árnyalatait kapja a 3 válaszlehetőségnek, a másik zöldet).
Az egy más dolog, hogy ezt a feladatot megcsináltam már telephelyenként kördiagrammal, ami még informatív is, ez meg csak egy katyvasz lesz, de ez már nem az én gondom. -
jackal79
aktív tag
válasz
Fferi50 #36286 üzenetére
Köszönöm mindenkinek a segítséget!
Ezek céges táblázatok, ezért semmilyen információt nem oszthatok meg róla. Gondoltam, hogy nem lesz egyszerű...
Még annyi, hogy a makrózást mennyire bonyolult megtanulni, mert az a munkámban nagy segítséget nyújtana.
Tudtok valami gyorstalpalót vagy esetleg a Youtube tutorial? Meglehet így tanulni vagy felesleges időt szánni rá?
Egyébként arra gondoltam, hogy a már kész fület úgy átmásolni, hogy a rögzített adatok törlődjenek. Ez kb napi szinten 400-500 rögzítést jelent és a táblázat úgy van megcsinálva, hogy nem folyamatos. Olyan mintha egy nagy Excelben sok kis táblázat lenne, módisítani nem lehet, mert a táblázatból más táblazatok is húznak adatokat.
Azért köszönöm mindenkinek! -
bteebi
veterán
válasz
Fferi50 #36229 üzenetére
Dim chars as Long
, a cikluson kívül meg van adva az értéke (0), a makró előtt megOption Explicit
van. ALen(sh.Cells(sor, 5))
eredménye meg szám, message box kiírja, szóval nem értem, hogy achars = chars + Len(sh.Cells(sor, 5))
már miért nem jó. A
chars
-nak ugyan elfelejtettem kezdőértéket adni (bár az akkor automatikusan 0, nem?), de ha meg is adom ugyanott, ahol a többi változónak, akkor is type mismatch...
-
föccer
nagyúr
válasz
Fferi50 #36213 üzenetére
Feneket. A 800. Sor korul ujraindult a gep, szerintem tulmelegedett... ^.^
Majd mindjart rakok bele egy automatikus mentest meg hogy kezelje a meglevo rszeket ne kelljen ujra szamolnia.
Hogyan lehet az eesz oszthatosagot ellenorizni? Regebben pascalos idoben valahogy ugy oldottam meg hogy ha az osztasi maradek =0 akkor hajtsa vegre muveletet. Igy lehetett konnyen egy for ciklusban periodikus utasitasokat futtatni.
-
föccer
nagyúr
válasz
Fferi50 #36206 üzenetére
Már egészen jól akalku. Csak valamiért nem a várt eredményeket adja vissza az optimalizáció... Vannak közel azonos sorok. LEgalábbis technológiailag azonosak, aminél az alkalmazott szabályrendszer alapján más eredményeknek kellene jönni.... :-/ Nem a makróval van a gond, az szépen elvégzi a feladatát.
Szóval most morci vagyok.
Óóó, és most eszembe is jutott a megoldás...
A 12 bevitt paraméterből csak 10-et nulláztam ki a ciklus elején...
Van 2 eldugottabb helyen, az kimaradt...
üdv, föccer
-
ben800
aktív tag
válasz
Fferi50 #36198 üzenetére
Igazából a kicsi munkafüzetek standard úgymond pénztárak, ugyanarra a sémára épülnek, mindegyik ugyan abban a mappában van
Valamint nézelődtem még Stackoverflow-on is lehetőségek után és ezt találtam, nem tudom hogy ez esetleg alkalmas lehet nekem kiindulási pontnak ??
UI:Sajnos nem lehet beletenni a kicsiket a nagyba, valamint az összes táblázat fejléce úgy van kialakítva hogy
átum-Összeg-Költség típusa stb
-
-
butch3r
senior tag
válasz
Fferi50 #36085 üzenetére
aha köszi. Hát ez 1 kicsit tul mutat rajtam, hogy ezt hogy kéne implementálnom
Illetve az sem világos hogy a 3 adatvonalhoz tartozó 2 label ranget ez a kód, hogy különbözteti meg, hogy msot ezt majd azt frissítse, persze más más rangek
Egyszer végig küzdöm magam rajta, többet úgyse kell (remélem) -
föccer
nagyúr
válasz
Fferi50 #35939 üzenetére
Hol hangzik, remelem boldogulok vele holnap.
Az auto szuro beallitasait milyen objektumon erem el? Ezt suma ertekadassal tudom modositani?
Illetve vektor tipust ismer a wba? Tehat definialni egy vekror adattombot valamilyen tipusbol? Monsjuk array of integer vagy valami ilyesmi.
Szepen lassan jonnek elo a regi emlekek... asszem holnap is jot fogok szorakozni...
-
föccer
nagyúr
válasz
Fferi50 #35937 üzenetére
A makrórögzítésekkel eleddig mindig csak a bajom volt, de ha van rá reális esély, hogy valahogy kiszedjem belőle az infót, akkor megéri szenvednem vele.
Egyébként este hazafelé kigondoltam egy viszonylag gyors algoritmust, ami járható út. A nagy adattáblából leszűröm a szükséges adatpárokat, majd gombnyomásra kimásolom őket egy külön lapra, csoportosítva egymás mellé, gyorsan egymás után, végig szaladok azon a 30-40 paraméteren pár perc alatt. A kérdéses lapon pedig választéklistából, indirekttel 1 kattintással tudom frissíteni a teljes diagrammot, leírom a 2 paramétert és már vissza is adja nekem a szükséges számokat. Ha másképpen nem megy, ez lesz a megoldás.
Ha szövegesen megkapom az egyenletet az jó, mert azt már szét tudom szedni függvényekkel és át tudom konvertálni számokká. Király lenne.
-
föccer
nagyúr
válasz
Fferi50 #35934 üzenetére
Valamikor megdicsőült gyermekkoromban foglalkoztam objektum orientált programozással, szóval nem teljesen idegen számomra ennek a lelki világa. Leginkább a programnyelv ismerete (legyen az bármennyire is egyszerű), illetve az objektumok és funkciók ismerete hiányzik.
Köszi, ezzel a szamárvezetővel már szerintem el fogok holnap boldogulni, sokat segítettél, köszönöm szépen.
üdv, föccer
-
Apollo17hu
őstag
válasz
Fferi50 #35906 üzenetére
Szia!
A szövegből oszlopoknál a mező típusának beállítása jó ötlet volt. Hagyhattam "Általános" típusban, mert van egy külön opció arra, hogy milyen karakter jelölje az ezres csoportosítást és a tizedeshelyeket. Ezt kellett vesszőről pontra módosítani. Így működik, köszönöm!
-
Illusion1010
senior tag
-
Delila_1
veterán
-
föccer
nagyúr
válasz
Fferi50 #35862 üzenetére
A keresett értéket ismerem, de nem tudom/akarom kézzel begépelni.
Tehát leszűrük egy több feltétel szerint egy adattáblát, és a szűrt táblázat első érvényes sorában szereplő, szöveg értékeket akarom kinyerni. A szám adatokkal megbírkózok az összesít függvénnyel el tudom végezni az elemzést, illetve átlagolással ki tudom nyerni az infót. A szöveggel van bajom.
Tehát a leszüt lista első sorából kellene a felső részre átpaterolni az adatokat, ahonnan egy mozdulattal tovább tudom tolni érték másolással.
Köszi
-
Új hozzászólás Aktív témák
- ANNO 1800
- Poco F7 – bajnokesélyes
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- One otthoni szolgáltatások (TV, internet, telefon)
- iPhone topik
- sziku69: Szólánc.
- Mini-ITX
- Wise (ex-TransferWise)
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- További aktív témák...
- 2db Apple Lightning - jack átalakító eladó egyben 1999 Ft
- Telefon felvásárlás!! iPhone 14/iPhone 14 Plus/iPhone 14 Pro/iPhone 14 Pro Max
- ÁRGARANCIA! Épített KomPhone Ultra 7 265KF 32/64GB RAM RX 9070 16GB GAMER PC termékbeszámítással
- HIBÁTLAN APPLE WATCH ULTRA 2 NATURAL TITANIUM 49MM -1 ÉV GARANCIA - MS3714, 100% AKKUMULÁTOR
- DEll G15 Notebbok i5-10/8/256/GTX 1650
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő