Hirdetés

2024. június 2., vasárnap

Gyorskeresés

Útvonal

Fórumok  »  OS, alkalmazások  »  Microsoft Excel topic (kiemelt téma)

Téma összefoglaló

Téma összefoglaló

  • Utoljára frissítve: 2023-11-13 08:31:56

LOGOUT.hu

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.

Összefoglaló kinyitása ▼

Hozzászólások

(#16851) Excelbarat


Excelbarat
tag

Hi mindenkinek, ötleteket, más fajta megoldást várok:
Feladat: excellel egy függvényt betanítani adatok alapján és kiszámolja, hogy egy adott eredményt milyen x értéknél vesz fel. Amit alkalmaztam, hogy egy diagrammot hozzáadtam + polinom trendvonalat és annak a függvényét használtam + célértékkeresést, de sajnos kevés adatnál eléggé eltorzul az eredmény...
itt egy kép is:

Egyéb ötletek?

[ Szerkesztve ]

(#16852) Bishop1 válasza Delila_1 (#16830) üzenetére


Bishop1
tag

Köszönöm, közben megoldódott.
Érdekes hogy egy másik gépen szintén nem sikerült vízszintes léptető nyilat húzni, egy harmadikon meg igen...
Közben új kérdések merültek fel.
Hogy tudnám a következő makrót úgy módosítani hogy a megnyitott új munkalap neve az aktuális dátum legyen? Sokat bonyolítana hogy ha többször nyit új munkalapot egy nap akkor egy számlálóval a végére beszúrjon egy számot?

Sub Gomb80_Kattintás()
'
' Gomb80_Kattintás Makró
'

'
Sheets("t").Select
Range("A1").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
Selection.AutoFilter
ActiveSheet.Range("$A$1:$D$66").AutoFilter Field:=4, Criteria1:="<>"
Selection.Copy
Sheets.Add After:=Sheets(Sheets.Count)
Columns("A:A").ColumnWidth = 24
ActiveSheet.Paste
Range("A1").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "=TODAY()"
Sheets("t").Select
Selection.AutoFilter
Sheets("napi").Select
End Sub

Illetve a másik kérdésem hogy meg lehet megoldani hogy minden 20-al kezdődő nevű munkalap adott két celláját (pl c1 és d1) egy munkalapon visszakapjam egymás alá listázva?

(#16853) Delila_1 válasza Bishop1 (#16852) üzenetére


Delila_1
Topikgazda

Az első kérdésre a makró:

Sub Gomb80_Kattintás()
Dim lap As Integer, szam, ujnev
Sheets(1).Select
lap = Worksheets.Count
If Left(Sheets(lap).Name, 10) = CDate(Date) And Len(Sheets(lap).Name) > 11 Then
szam = Right(Sheets(lap).Name, Len(Sheets(lap).Name) - 12)
ujnev = szam + 1
Sheets.Add After:=Sheets(lap)
ActiveSheet.Name = Date & "_" & ujnev
Else
Sheets.Add After:=Sheets(lap)
ActiveSheet.Name = Date & "_1"
End If

Sheets(1).Select
Range("A1").Select
Selection.CurrentRegion.Select
lap = Worksheets.Count
Selection.Copy Sheets(lap).Range("A1")
Sheets(lap).Select
Selection.AutoFilter
Columns("A:A").ColumnWidth = 24
End Sub

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#16854) Delila_1 válasza Bishop1 (#16852) üzenetére


Delila_1
Topikgazda

Második kérdés. A Gyűjtő nevű lap C:D oszlopába gyűjti ki a 20-szal kezdődő nevű napok C1:D1 cellájának az adatait.

Sub C1D1()
Dim usor As Integer, lap As Integer
For lap = 1 To Worksheets.Count
If Left(Sheets(lap).Name, 2) = "20" Then
usor = Sheets("Gyűjtő").Cells(Rows.Count, "C").End(xlUp).Row + 1
Sheets(lap).Range("C1:D1").Copy Sheets("Gyűjtő").Range("C" & usor)
End If
Next
End Sub

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#16855) Bishop1 válasza Delila_1 (#16854) üzenetére


Bishop1
tag

Szia!
Leköteleztél! MIndjárt ki is próbálom őket.

(#16856) Delila_1 válasza Bishop1 (#16855) üzenetére


Delila_1
Topikgazda

Szólj, ha valami gondod akad a makrókkal!

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#16857) atillaahun


atillaahun
veterán

Arra is tudtok valami okosságot, hogy a szövegből oszlopok-nál sortörés szerint lehessen tagolni?
Mert ha a jelölőnél az egyébhez próbálom beírni az enter-t, vagy alt+enter-t, akkor ugye továbblép. :(

Szimpla szavak szerint szünetekkel meg nem akarom tagolni, mert ahhoz túl sok a tartalom a cellákba, elég lenne soronként. Outlook-ból exportált levelekről van egyébként szó .mdb formátumban.

[ Szerkesztve ]

(#16858) Bishop1 válasza Delila_1 (#16856) üzenetére


Bishop1
tag

Nem igazán akar működni a makró, az új oldalt megcsinálja, a neve a dátum, eddig stimmel.
Viszont a t nevű munkalapról az autószűrővel szűrt adatok nem kerülnek át az új munkalapra.
Megvallom, cseppet sem értek a makrókhoz, makrórögzítővel raktam össze a fenti programot (egyébként tökéletesen működik csak annyi kellene hogy dátum legyen az új munkalap neve ami nem frissül)
Amit csináltál megcsinálja az új munkalapot, névként megvan a dátum aztán hibát ad a következő üzenettel:
Run-time error 1004 és debug módban a következő sort jelzi hibásnak: Selection.CurrentRegion.Select (Ln17 , Col1).
Amit csináltam az egyébként leszűri a t munkalapon lévő táblázatból az üres sorokat, nyit egy új munkalapot, beszúrja, fölé betesz egy dátumot, vissza t-re, autószűrő kikapcsol, vissza napi-ra (ahol a gomb van ami az egészet indítja) és üríti a vágólapot.
Jól sejtem hogy a tiédet még valahogy össze kell kombinálnom az enyémmel?

[ Szerkesztve ]

(#16859) Bishop1 válasza Bishop1 (#16858) üzenetére


Bishop1
tag

Erre jutottam végül kis segítséggel, de ez nem számlálja az oldalakat, vagyis ha aznap még egy munkalapot nyitnék akkor hibaüzenetet ad az azonos munkalap nevek miatt. Ezt továbbgondolva, mi a módja hogy ha ilyenkor nyitáskor azonos munkalap nevet talál felülírja a frissebbel?

Sub Gomb80_Kattintás()
'
' Gomb80_Kattintás Makró
'

'
Sheets("t").Select
Range("A1").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
Selection.AutoFilter
ActiveSheet.Range("$A$1:$D$66").AutoFilter Field:=3, Criteria1:="<>"
Selection.Copy
Sheets.Add(After:=Worksheets(Sheets.Count)).Name = Date
Columns("A:A").ColumnWidth = 24
ActiveSheet.Paste
Range("A1").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "2/23/2013"
Sheets("t").Select
Selection.AutoFilter
Sheets("napi").Select
Range("O8").Select
End Sub

[ Szerkesztve ]

(#16860) artiny


artiny
őstag

MS. EXCEL.2007 - Miért nem importalja be rendesen az EXCEL txt fajbol az adatokat?
https://www.dropbox.com/s/5y7mnk1n7xwko4k/data2042.txt

(#16861) artiny válasza artiny (#16860) üzenetére


artiny
őstag

pl. 2.oszlop 3 soraba, 1.7.9765 ezt irja ki ez helyett 7.9765 , rákattintva átirom lepipazom és ujbol a regi 1.7.9765 lessz ott :W

(#16862) Delila_1 válasza artiny (#16860) üzenetére


Delila_1
Topikgazda

Úgy gondoltam, át tudod alakítani azt, amit írtam. Átírtam, hogy ne az első, hanem a t nevű lapról másolja az adatokat. Az A1:D66 terület fix? Ha nem, a

Range("A1:D66").Copy Sheets(lap + 1).Range("A1")

helyett ezt írd:

Range("A1").Select
Selection.CurrentRegion.Select
Selection.Copy Sheets(lap+1).Range("A1")

És akkor az átírt makró:

Sub Gomb80_Kattintás()
Dim lap As Integer, szam, ujnev
Sheets(1).Select
lap = Worksheets.Count
If Left(Sheets(lap).Name, 10) = CDate(Date) And Len(Sheets(lap).Name) > 11 Then
szam = Right(Sheets(lap).Name, Len(Sheets(lap).Name) - 12)
ujnev = szam + 1
Sheets.Add After:=Sheets(lap)
ActiveSheet.Name = Date & "_" & ujnev
Else
Sheets.Add After:=Sheets(lap)
ActiveSheet.Name = Date & "_1"
End If

Sheets("t").Select
Range("A1:D66").Copy Sheets(lap + 1).Range("A1")
Sheets(lap + 1).Select
Selection.AutoFilter
Columns("A:A").ColumnWidth = 24
Sheets("napi").Select
End Sub

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#16863) Delila_1 válasza Bishop1 (#16858) üzenetére


Delila_1
Topikgazda

Figyelmesebben átolvasva azt szeretnéd, ha az új, dátum nevű lapokon a"t "lap címsora (A1:D1 tartomány) jelenne meg a második sorban, az A1 cellában pedig a dátum. Ha jól értem, nincs szükség az autoszűrő ki-bekapcsolására, csak a felső sort kell másolni.

Javaslom, hogy a bővítménykezelőben kapcsold be az Analysis ToolPak és az Analysis ToolPak -VBA bővítményeket, mert valószínű, hogy ezeknek a hiánya miatt futott hibára az előző verzió. Ezekkel kapsz egy halom hasznos új függvényt.

Sub Gomb80_Kattintás()
Dim lap As Integer, szam, ujnev
Sheets(1).Select
lap = Worksheets.Count
If Left(Sheets(lap).Name, 10) = CDate(Date) And Len(Sheets(lap).Name) > 11 Then
szam = Right(Sheets(lap).Name, Len(Sheets(lap).Name) - 12)
ujnev = szam + 1
Sheets.Add After:=Sheets(lap)
ActiveSheet.Name = Date & "_" & ujnev
Else
Sheets.Add After:=Sheets(lap)
ActiveSheet.Name = Date & "_1"
End If

Sheets("t").Range("A1:D1").Copy Sheets(lap + 1).Range("A2")
Sheets(lap + 1).Select
Range("A1") = Date
Columns("A:A").ColumnWidth = 24
Sheets("napi").Select
End Sub

[ Szerkesztve ]

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#16864) Delila_1 válasza artiny (#16860) üzenetére


Delila_1
Topikgazda

Elnézést, a 16862-es hsz. nem neked szólt.

Megnyitottam a txt fájlodat Excelben. A Szövegbeolvasó varázslóban semmit nem módosítottam, csak a Tovább gombot nyomogattam, és tökéletesen olvasta be a fájlt.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#16865) artiny válasza Delila_1 (#16864) üzenetére


artiny
őstag

:F nekem valahogy nem olvasta be rendessen....voltak jol beolvasott szamok es voltak rosszak randonban...

azota kicsereltem a . ,-re es most jo

most egy olyan függvényt keresek ami megtalalja abszolut ertekben a 2 legnagyobb erteket

(pl. -9 , 8 ,-0,5, 4 ,-4 >>> egyik a -9 a masodik pedig a 8 lessz)

[ Szerkesztve ]

(#16866) Excelbarat válasza artiny (#16865) üzenetére


Excelbarat
tag

Hi!
az első legnagyobb megtalálására a MAX függvény. Ha a 2., 3., 4., .... legnagyobbat akarod megkapni akkor használd a NAGY függvényt =NAGY(A1:A10;2) pl ez a második legnagyobbat adja vissza az A1:A10 tömbben. Ha abszolút érték szerint kell akkor felveszel egy új oszlopot amiben az első cellában =ABS(A1) és lemásolod majd a függvényben erre az oszlopra hivatkozol. Remélem érthető ahogy írtam :)

[ Szerkesztve ]

(#16867) m.zmrzlina


m.zmrzlina
senior tag

Van egy ilyen munkalapom: (A:C oszlopok kb 15000 sort tartalmaznak)

A J oszlop képlete megszámolja, hogy G:I oszlopok -1-re végződő számhármasai hányszor szerepelnek A:C oszlopokban. Ugyanezt szeretném megcsinálni makróval, valahogy így:

Range("I3").Select
Do While ActiveCell.Value = -1
ActiveCell.Offset(0, 1).Value = Application.WorksheetFunction.SumIfs _
(Range("A:A"), ActiveCell.Offset(0, -2), Range("B:B"), ActiveCell.Offset(0, -1), ActiveCell.Value, -1)
ActiveCell.Offset(1, 0).Select
Loop

Type mismatch hibát kapok. Mit rontok el?

(Tudom innen ki lehetne hagyni a SUMIFS() utolsó két argumentumát de ez most részletkérdés)

[ Szerkesztve ]

(#16868) m.zmrzlina válasza m.zmrzlina (#16867) üzenetére


m.zmrzlina
senior tag

Időközben próbáltam ezt a változatot is:

Range("I3").Select
Do While ActiveCell.Value = -1
strKeplet = "=DARABHATÖBB(A:A;G" & ActiveCell.Row & ";B:B;H" & ActiveCell.Row & ")"
ActiveCell.Offset(0, 1).Value = strKeplet
ActiveCell.Offset(1, 0).Select
Loop

Ebben az esetben a:
ActiveCell.Offset(0, 1).Value = strKeplet
sor ad Application-defined or object-defined error-t.

(#16869) Delila_1 válasza m.zmrzlina (#16868) üzenetére


Delila_1
Topikgazda

Makró nélkül, 2 segédoszloppal.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#16870) m.zmrzlina válasza Delila_1 (#16869) üzenetére


m.zmrzlina
senior tag

Szia, köszi a választ!

Azért ragaszkodom a makrós megoldáshoz mert nem én fogom használni a munkalapot ezért szeretnék mindet amit lehet a "gombnyomásig" leegyszerűsíteni. Ha nekem kellene akkor a DARABHATÖBB()-es megoldás is jó lenne.

Az a koncepció, hogy a felh. egy üres munkafüzetbe beimportálja a szükséges adatokat,elmenti, bezárja. Aztán megnyitja a makrós munkafüzetet elindítja a makrót (betallózza az előbb mentett adatbázisát) és a makró kikeresi neki a szükséges adatokat.

A szerkezet amit a képen látsz az már a makró elejének a munkája, egyszerűbb volna nem a felhasználóra bízni a képletírást.

(#16871) Delila_1 válasza m.zmrzlina (#16870) üzenetére


Delila_1
Topikgazda

Sub mm()
Range("J3:J15000") = "=COUNTIFS(A:A,G3,B:B,H3,C:C,I3)"
Columns("J:J").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End Sub

[ Szerkesztve ]

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#16872) m.zmrzlina válasza Delila_1 (#16871) üzenetére


m.zmrzlina
senior tag

Range("J3:J15000") = "=COUNTIFS(A:A,G3,B:B,H3,C:C,I3)"

Ennél a sornál hal most meg nekem a makró (ld #16868. hszt)

Egyszerűen nem írja ki munkalapra a makró a megadott cellába a képletet. Ha kitörlöm az "="- t a fv neve elől akkor kiírja munkalapra (szövegként természetesen, és persze nem számol)

Maga a fv jó mert ha kézzel :O odabiggyesztek elé egy "="-t akkor jó eredményt ad.
A baj az hogy makróval nem tudom kiírni a fv-t a munkalapra.

Illeteve nekem úgy is jó lenne ha a makró számolná ki az eredményt és már csak azt írná ki munkalapra. (ez volt az eredeti koncepció #16867 hsz)

[ Szerkesztve ]

(#16873) Delila_1 válasza m.zmrzlina (#16872) üzenetére


Delila_1
Topikgazda

Be van kapcsolva az Analysis ToolPak - VBA nevű bővítményed?

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#16874) m.zmrzlina válasza Delila_1 (#16873) üzenetére


m.zmrzlina
senior tag

Nem volt.
Bekapcsoltam, Excelt újraindítottam > helyzet ugyanaz.

(#16875) Delila_1 válasza m.zmrzlina (#16874) üzenetére


Delila_1
Topikgazda

Nekem csak 2007-es verzióm van, de azért küldd el, ha gondolod, megnézem.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#16876) atillaahun


atillaahun
veterán

Olyan függvény van, ami megszámolja, hogy bizonyos karakter/kifejezés hányszor szerepel egy cellában?
Elég alapvető dolognak tűnik, én mégse találtam.
A darab-okkal csak cellatartományban lehet számolni? :(((

[ Szerkesztve ]

(#16877) Delila_1 válasza atillaahun (#16876) üzenetére


Delila_1
Topikgazda

=SZORZATÖSSZEG(--(KÖZÉP(B2;SOR(A1:INDIREKT("A"&HOSSZ(B2)));1)="a"))

Ez a B2 cella szövegében számolja meg az a betűket.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#16878) atillaahun válasza Delila_1 (#16877) üzenetére


atillaahun
veterán

Köszi. :) Ebbe inkább bele se gondolok hogy működik. :U

Tegnap óta próbálom egyébként egy xls-be exportált visszapattanó email halomból (levelek tartalmából - body) kinyerni a konkrét címeket, hogy aztán kitörölhessem őket a küldő adatbázisból, de sehogy sem jövök rá egy hatékony megoldásra. :( Majd mindegyik levélnek más a szövege, tehát máshova esnek bennük a címek, ráadásul 2-3-4-5-... db cím van is minden levélben.

Tudsz esetleg erre egy kézenfekvő megoldást, ami valahogy a hivatkozásokat tudja másolni, vagy jobb ha elkezdem őket egyesével, kézzel kiszedegetni? :F

[ Szerkesztve ]

(#16879) Delila_1 válasza atillaahun (#16878) üzenetére


Delila_1
Topikgazda

Nem tudom, honnan veszed a szöveget, de ha 1 oszlopba jut 1-1 hosszú, címekkel tarkított szövegrész, akkor a szövegből oszlopok funkcióval szét tudod szedni, szóköz tagolóval.
Gondolom, az előbbi képlettel a @ jelet számlálod.

Ha szövegrész előfordulását akarod számlálni egy szövegben, akkor a

=SZORZATÖSSZEG(--(KÖZÉP(B2;SOR(A1:INDIREKT("A"&HOSSZ(B2)));1)="a"))

úgy módosul, hogy a képleten belül lévő egyenlőségjel előtti 1-et átírod annyira, ahány karakter hosszú a keresett szövegrész.

=SZORZATÖSSZEG(--(KÖZÉP(B2;SOR(A1:INDIREKT("A"&HOSSZ(B2)));4)="alma"))

[ Szerkesztve ]

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#16880) atillaahun válasza Delila_1 (#16879) üzenetére


atillaahun
veterán

Igaz!
Mármint ezzel már tegnap is próbálkoztam, csak sortörések, meg egyéb hülye karakterek voltak a szövegben, és folyton beleakadt a tagolás. De most rátaláltam a csodálatos tisztít függvényre, és így máris jól viselkedik a szöveg. :)

[ Szerkesztve ]

(#16881) detroitrw


detroitrw
addikt

Sziasztok :)

azt hogy lehet megoldani hogy az:
A1=0x00/1y11

s ez így jelenjen meg:
B1=0x00
C1=1y11

a karakterek alfanumerikusak és különböző hosszúságúak :U
szal csak az a biztos hogy van benne / :)

előre is köszi :R

(#16882) atillaahun válasza detroitrw (#16881) üzenetére


atillaahun
veterán

Szerintem épp a kettővel lejjebb írt 'Szövegből oszlopok'-kal, csak nem szünet hanem / jel szerint tagolsz.

[ Szerkesztve ]

(#16883) detroitrw válasza atillaahun (#16882) üzenetére


detroitrw
addikt

:Y
ennyi idő alatt nem ér megmondani :C :R

de az ilyennek mi a parancssora?
mert automatikus kellene ami csak arra vár legyen a cellákba adat legyen (az nem számít hogyha nincs adat hibát ír)

(#16884) detroitrw válasza atillaahun (#16882) üzenetére


detroitrw
addikt

ja s most látom hogy ez egyik fülből a másikba nem tud tagolni? :F
mert fülön belül megcsinálja, de ha a végeredményt másik fülre akarom kiíratni hibát ír

[ Szerkesztve ]

(#16885) Delila_1 válasza detroitrw (#16884) üzenetére


Delila_1
Topikgazda

A másik lapra
A1-be =BAL(Munka1!A1;SZÖVEG.KERES("/";Munka1!A1)-1)
B1-be =JOBB(Munka1!A1;HOSSZ(Munka1!A1)-SZÖVEG.KERES("/";Munka1!A1))

feltéve, hogy a 0x00/1y11 szöveg a Munka1 lap A1 cellájában van.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#16886) atillaahun válasza detroitrw (#16884) üzenetére


atillaahun
veterán

Hát azt én nemtom. :U

De lehúzós képlettel talán így a legegyszerűbb. :B

B1=BAL(A1;(SZÖVEG.KERES("/";A1))-1)
C1=KÖZÉP(A1;(SZÖVEG.KERES("/";A1))+1;100)

Lassú vótam. :O

[ Szerkesztve ]

(#16887) detroitrw


detroitrw
addikt

köszi mindkettőtöknek :))
működik :C

s olyat lehet hogy ez a parancssor ha nem talál / -t akkor csak simán beírja az értéket az adott cellába :)

[ Szerkesztve ]

(#16888) Delila_1 válasza detroitrw (#16887) üzenetére


Delila_1
Topikgazda

A1-be =HAHIBA(BAL(Munka1!A1;SZÖVEG.KERES("/";Munka1!A1)-1);Munka1!A1)
B1-be =HAHIBA(KÖZÉP(Munka1!A1;SZÖVEG.KERES("/";Munka1!A1)+1;256);"")

[ Szerkesztve ]

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#16889) detroitrw válasza Delila_1 (#16888) üzenetére


detroitrw
addikt

köszike :R

:C

(#16890) Delila_1 válasza detroitrw (#16889) üzenetére


Delila_1
Topikgazda

Szivi. :)

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#16891) atillaahun válasza Delila_1 (#16879) üzenetére


atillaahun
veterán

Üöhm, mégsem haladok olyan jól ezzel a széttagolt szemétdombbal mint gondoltam. :U
Esetleg valami további ötlet, hogy a sok új cellából hogy válogassam ki azokat, amik címeket vagy @-ot tartalmaznak? Mert ugye adott sorban több is van, és általában más oszlopokban. :F

[ Szerkesztve ]

(#16892) Delila_1 válasza atillaahun (#16891) üzenetére


Delila_1
Topikgazda

Segít, ha feltételes formázást adsz rá?
A formázás képlete =SZÖVEG.TALÁL("@";A1)>0

Esetleg egy makró, ami végigfut a területen, és egy másik helyre egymás alá beteszi a @-ot tartalmazó cellák tartalmát...

[ Szerkesztve ]

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#16893) detroitrw


detroitrw
addikt

ha már így belejöttetek ... :))

még egy uccsó kérdés

adott:
A1=1603+1603+640+640+640+388+388
(nem képlet hanem szöveg!)

s pl. ilyen kellene belőle:
B1=2db - 1603
C1=3db - 640
D1=2db - 388

:R

csak számokat tartalmaz, a + mindig adott, a számok mennyisége változó

[ Szerkesztve ]

(#16894) Delila_1 válasza detroitrw (#16893) üzenetére


Delila_1
Topikgazda

Nézz el a 16879-be, és az előzményeibe.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#16895) Delila_1 válasza atillaahun (#16891) üzenetére


Delila_1
Topikgazda

Ímé a makró hozzá:

Sub email()
Dim ter As Range, CV, WS As Worksheet, sor As Integer

Cells(1).Select
Selection.CurrentRegion.Select
Set ter = Selection
Set WS = Sheets("Munka2")
sor = 1

For Each CV In ter
If InStr(CV, "@") Then
WS.Cells(sor, 1) = CV
sor = sor + 1
End If
Next
End Sub

A Munka1 lapon oszlopokba szétszedett adatokból a Munka2 lap A oszlopába gyűjti ki a címeket (@-ot) tartalmazó cellák tartalmát.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#16896) atillaahun válasza Delila_1 (#16895) üzenetére


atillaahun
veterán

Köszi szépen. :)
Azt hiszem ezzel már így jutok valamire. Most már csak a kapott cellákat kell megtisztítsam pár szó/karakter feleslegtől, és akkor végre megmarad a tiszta cím. :U

[ Szerkesztve ]

(#16897) Delila_1 válasza atillaahun (#16896) üzenetére


Delila_1
Topikgazda

Milyen szemét karakterek vannak benne?

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#16898) detroitrw válasza Delila_1 (#16894) üzenetére


detroitrw
addikt

háát én ebbe bőven elveszek :F

(#16899) atillaahun válasza Delila_1 (#16897) üzenetére


atillaahun
veterán

Egy 100-as mintányi levélen futtattam most le, és lett belőle EZ, kb. ötször annyi címmel - cellával, ami nagyjából stimmel is.
Leginkább csak a kacsacsőr jelek maradtak, meg itt-ott pár szó, pontosvessző, meg néhány egyéb hülye karakter.

Valami szöveg.keres meg közép függvényekben gondolkodom. :U
Az már megvan, hogy a végét ott kell levágni ahol a .hu van, csak még az elejét kéne valahogy megtalálni, mert az ugye változó.

[ Szerkesztve ]

(#16900) Delila_1 válasza atillaahun (#16899) üzenetére


Delila_1
Topikgazda

A makró végére írd be, hogy a Munka2 A oszlopában ezeket a karaktereket cserélje üres stringre.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

Útvonal

Fórumok  »  OS, alkalmazások  »  Microsoft Excel topic (kiemelt téma)
Copyright © 2000-2024 PROHARDVER Informatikai Kft.