Hirdetés
- Samsung Galaxy A56 - megbízható középszerűség
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Xiaomi 13 - felnőni nehéz
- iPhone topik
- Milyen okostelefont vegyek?
- Motorola Edge 50 Neo - az egyensúly gyengesége
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Samsung Galaxy A17 5G – megint 16
- Apple iPhone 16 Pro - rutinvizsga
- Xiaomi 15 - kicsi telefon nagy energiával
-
Mobilarena
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
-
Mutt
senior tag
válasz
Agostino
#39064
üzenetére
Szia,
Ha a képen látható módon rendezed az adatodat, akkor megkapod a kívánt eredményt.
Lépések:
1. Kijelölöd az adattartományod, majd grafikon beszúrásakor kiválasztod a halmozott oszlop diagrammot.
2. Excel próbál okos lenni és 3 oszlopot tesz egymás mellé, de te kattints a sorok/oszlopok felcserélésére.üdv
-
-
Fferi50
Topikgazda
válasz
Agostino
#33437
üzenetére
Szia!
Van olyan lehetőség is a makró futtatáskor, hogy lépésenként hajtsa végre (akkor láthatod, hogy melyik sornak mi a következménye.)
Egyébként a következő a probléma:
Ha az egész munkalapot másolod paraméter nélkül, akkor a másolat egy új munkafüzetbe kerül át és az lesz egyúttal az aktív munkafüzet is. Így az új munkafüzetet fogod menteni és bezárni, a régi megmarad.
Ha viszont egy munkalap tartományt másolsz csak, akkor az eredeti munkafüzeted aktív munkalapját fogja elmenteni az új néven és egyúttal a neve is megváltozik, továbbá csak ez az egy munkafüzet lesz és ezt fogja bezárni a makró - bármelyik if ágra is kerül.
A SaveAs metódus mindig megváltoztatja az elmentett fájl nevét!
Ha csak egy területet szeretnél menteni, akkor szerintem az a megoldás, hogy a kívánt területet átmásolod egy új munkalapra, majd ezt az új munkalapot helyezed át és mented el csv fájlként:InitFileName = ThisWorkbook.Path & "\Kimentett munkafüzet_" & Format(Date, "yyyymmdd")stb.
Set NewSheet = Sheets.Add
Sheets("Munka1").Range("A1:C5").Copy Destination:=NewSheet.Range("A1")
NewSheet.Move
Set wb = ActiveWorkbookÜdv.
-
Delila_1
veterán
válasz
Agostino
#33225
üzenetére
Szívesen.

Egy másik fórumra is feltettem, ahol ezt a használati utasítást írta egy olvtárs:
"Az esetleges kezdők számára engedtessék meg egy kis eligazítás: A kezdő nehogy a 01. fejezet, 02. fejezet stb. tanulmányozásával kezdje, mert ezek az eredeti CD mellékletek anyagai, és mint ilyenek, nem önmagukban olvasandók.
Az xlMacro.pdf olvasásával érdemes elkezdeni. És ott az egyes fejezetek mellett a lap jobb oldalán olvasható, hogy melyik CD mellékletet nézze hozzá s szöveghez."
-
Agostino
addikt
válasz
Agostino
#32946
üzenetére
no, csak sikerült egyet működésre bírnom
Sub export()
strFileSaveName = Application.GetSaveAsFilename(Range("X6") & " " & Range("X9") & "01 munkalap feltoltesre" & Range("X10"), _
fileFilter:="Pontosvesszővel tagolt CSV file (*.csv), *.csv")
ActiveWorkbook.SaveAs Filename:=strFileSaveName, FileFormat:=xlCSV, Local:=True
End SubEz tök jó és a jelek szerint a kívánalmak szerint működik is, ami nekem nem tiszta - nem annyira asztalom a makrózás - az a range beállítás fent. ez biztos láma kérdés...
-
Fferi50
Topikgazda
válasz
Agostino
#25886
üzenetére
Szia!
A Type mismatch hiba akkor következik be, ha egy változót nem a neki megfelelő értékkel szeretnél feltölteni.
Akkor tudnál közelebb jutni a probléma megoldáshoz, ha a hiba jelentkezésekor a debug gombra kattintasz. Ekkor megjelenik a VBA nézet és sárgával az a sor, amelyiken a hiba jelentkezik.Ezt a képet feltehetnéd. Az immediate ablakban (ha nem látsz ilyet, akkor a felső menüsorban view immediate) pedig meg lehet tudni, hogy melyik cella okozta a problémát. Ha beírod az ablakba: ? cella.address és nyomsz egy entert, kiírja a cella címét, ? cella.value enter kiírja a cella aktuális értékét, cella.select enter az adott cellára ugrik.
Utána átmész az excel ablakba és meg is nézheted a cella tartalmát.(Gondolom erről a makróról van szó:
For Each cella In Selection.Cells
If InStr(1, cella.Value, "!") <> 0 Then
cella.Value = "*" & cella.Value & "*"
End If
Next)Üdv.
-
Agostino
addikt
válasz
Agostino
#25876
üzenetére
kicsit önmagamnak válaszolva és elmélkedve. mi akaszthat meg egy makrót? ha kijelölök 50k sort és lefuttatom, minden oké. ahogy haladok belefutok egy halmazba, ami error 13-at dob. de semmi extrát nem látok. a memória nem fogy el, a cpu 25%-on fut csak... erőforrás tehát van. formázni kellene az excelt? most nincsen rajta semmi, mert sql-ből exportált csv-ről beszélünk...
-
m.zmrzlina
senior tag
válasz
Agostino
#25728
üzenetére
Az alábbi pár sor a kijelölt tartomány minden cellájában leellenőrzi, hogy van-e "!" (felkiáltójel) és ha van akkor egy "*" (csillag v. szorzásjel) karaktert tesz a cellatartalom elejére és végére.
For Each cella In Selection.Cells
If InStr(1, cella.Value, "!") <> 0 Then
cella.Value = "*" & cella.Value & "*"
End If
Next -
Mutt
senior tag
válasz
Agostino
#19085
üzenetére
Hello,
FKERES-hez a többiek mellett még az alábbi javaslatom lehet.
Amit fontos tudni, hogy a táblában (amelyből vissza akarod kapni a keresett értéket) az első oszlopban milyen módon vannak az értékek. A számok lehetnek számként (alapból jobbra rendezi a cella tartalmát az Excel) tárolva vagy szövegként (ezek balra vannak igazítva).Ha ezt tudjuk, akkor az FKERES-ben a keresési értéket fel lehet készíteni, hogy a táblának megegyező formátumba tegye azt minden esetben:
1. A táblában szám van, ekkor használható ez:
=FKERES(--D13;$K$13:$L$3766;2;0)
2. A táblázatban szöveg van, ekkor pedig ez:
=FKERES(D13&"";$K$13:$L$3766;2;0)Az első esetben megszorozzuk a cella értékét 1-el, ekkor a számként értelmezhető, de nem számként tárolt értékek is számok lesznek. A második esetben pedig egy üres szöveget fűzünk az értékhez, aminek eredménye egy szöveg lesz minden esetben.
Az FEKERES helyett használható a HOL.VAN függvény is, amely nem csak a fenti formátum problémára érzéketlen, hanem megoldható vele hogy az első oszloptól balra is tud értéket visszaadni. Az INDEX függvénnyel kell együtt használni.
Alább a logika, hogy ezek a függvények hogyan képezhetők le egymásra:FKERES(keres;tábla;hanyadik oszlop;egyezés típusa) -> INDEX(tábla;HOL.VAN(keres;tábla;egyezés típusa);hanyadik oszlop)
Továbbá meglepő módon a KERES függvény sem finnyás (itt viszont pontos egyezést nem lehet beállítani):
KERES(keres;tábla első oszlopa;tábla visszatérési oszlopa)
pl. KERES(D13;K:K;L:L)üdv.
-
Delila_1
veterán
válasz
Agostino
#19083
üzenetére
Nem elég számformára állítani az oszlopot, attól még szöveg típusúak az értékeid. Sajnos így működik az Excel.
Viszont egyszerű kijavítani.
Beírsz valahova, egy üres cellába egy egyest. Ctrl+c-vel másolod, kijelölöd az átalakítandó tartományt. Jobb klikk, Irányított beillesztés, Szorzás, OK.A szorzástól számmá alakulnak az értékeid, az egyest kitörölheted.
-
Delila_1
veterán
válasz
Agostino
#18453
üzenetére
Az oszlop, amiben a képleteid vannak, általános cellaformátumú legyen.
Az elsőnél add meg ezt, a képletet a szerkesztőlécen enterezd le, és ezután másold a képletet.Ha csak simán átállítod az oszlop formátumát, még nem hiszi el (az Excel), egyenként le kellene enterezned a sorokat. A fenti módszerrel elég a felsőt, mert másoláskor a formátumot is viszi magával.
-
Delila_1
veterán
válasz
Agostino
#17807
üzenetére
A DARABTELI függvény ad majd számokat.
Ha az adataid az A oszlopban vannak, akkor az új oszlop 2. sora (címsort feltételezve) legyen =DARABTELI(A$2:A2;A2). Figyelj a $ jelre!
Ezt a függvényt lemásolod a többi sorba. Minden sorba azt írja be, hányadik alkalommal fordul elő az adat az oszlopban.
Ahol 1 az érték, az a sor marad, a többit törölheted. -
Delila_1
veterán
Új hozzászólás Aktív témák
- Fizetős szoftverek ingyen vagy kedvezményesen
- Bittorrent topik
- Samsung Galaxy A56 - megbízható középszerűség
- Robotporszívók
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Milyen videókártyát?
- Android felhasználók OFF topikja
- Kínai és egyéb olcsó órák topikja
- Android játékok topikja
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- További aktív témák...
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Kaspersky, BitDefender, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- Játékkulcsok ! : PC Steam, EA App, Ubisoft, Windows és egyéb játékok : (12.13.)
- Adobe Előfizetések - Adobe Creative Cloud All Apps - 12 Hónap - 15% AKCIÓ
- Bitdefender Total Security 3év/3eszköz! - Tökéletes védelem, Most Ünnepi áron! :)
- Eredeti Lenovo 135W töltők (sárga téglalap)
- Panasonic HC-V770 FUL HD kamera
- GYÖNYÖRŰ iPhone 12 Mini 128GB Blue-1 ÉV GARANCIA -Kártyafüggetlen, MS4209, 94% Akksi
- Bomba ár! HP EliteBook 755 G5 - Ryzen PRO 3 I 8-16GB I 256GB SSD I 15,6" FHD I Cam I W11 I Gari!
- Telefon felvásárlás!! Samsung Galaxy A70/Samsung Galaxy A71/Samsung Galaxy A72
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: ATW Internet Kft.
Város: Budapest


Fferi50

