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.
Gyorskeresés
Legfrissebb anyagok
- Bemutató Spyra: akkus, nagynyomású, automata vízipuska
- Bemutató Route 66 Chicagotól Los Angelesig 2. rész
- Helyszíni riport Alfa Giulia Q-val a Balaton Park Circiut-en
- Bemutató A használt VGA piac kincsei - Július I
- Bemutató Bakancslista: Route 66 Chicagotól Los Angelesig
Általános témák
LOGOUT.hu témák
- [Re:] [sziku69:] Szólánc.
- [Re:] [Luck Dragon:] Asszociációs játék. :)
- [Re:] [gban:] Ingyen kellene, de tegnapra
- [Re:] [D1Rect:] Nagy "hülyétkapokazapróktól" topik
- [Re:] [antikomcsi:] Való Világ: A piszkos 12 - VV12 - Való Világ 12
- [Re:] Elektromos rásegítésű kerékpárok
- [Re:] [Kolondrum:] Éves rezsi
- [Re:] [plevips:] Építkezünk 3. rész (2024)
- [Re:] [Tüzi:] Geek-hatarozo
- [Re:] PLEX: multimédia az egész lakásban
Szakmai témák
PROHARDVER! témák
Mobilarena témák
IT café témák
Téma összefoglaló
- Utoljára frissítve: 2023-11-13 08:31:56
LOGOUT.hu
Hozzászólások
zsambek
aktív tag
Sziasztok,
Az a kérdésem lenne, hogy:
http://www.oktatas.hu/pub_bin/dload/kozoktatas/erettsegi/feladatok2010tavasz/e_info_10maj_fl.pdf
ebben az érettségiben úgy szeretném megcsinálni, a Jelszóbetűs részt, hogy oldalra felvettem egy segédtáblát, amibe beletöltöttem az angol ábécé betűit, és onnan szeretném indexeléssel kiválasztani a betűt.
Viszont a problémám az, hogy néha #ÉRTÉK-et ír, viszont nem tudom miért.
INDEX($M$2:$M$27;KEREK.LE(26*VÉL();0);0)
Ezt használom. Az M2 : M27-ben van az angol ábécés tábla.
Köszi a segítséget,
zsambek`
bteebi
veterán
(Most már) nálam is . Elsőre lefut hiba nélkül, de ha utána újra lefuttatom, akkor előjön ez a hiba. Második futás után - nem tudom miért - azt csinálja, hogy már eleve szétbontja oszlopokra a szöveget. Ezek szerint nem csak minden indítás után végzi el a tagolást, ami számomra meglepő. Ráadásul a munkafüzetben bárhová másolom az adatokat, akkor is szétbontja oszlopokra. Valószínűleg emiatt van a hibaüzenet is, bár nem világos, hogy miért.
#21500: Köszönöm neked is! Ismertem amúgy ezt a funkciót, bár még talán csak egyszer-kétszer használtam korábban.
Cancel all my meetings. Someone is wrong on the Internet.
Delila_1
Topikgazda
Ellenőrizd, hogy az A1 cellában van-e szóköz. Ha van, akkor fusson a szövegből oszlopok részre, egyébként lépjen túl ezen a részen.
If InStr(Cells(1), " ") > 0 Then
MsgBox "van szóköz"
Else
MsgBox "nincs szóköz"
End If
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
Delila_1
Topikgazda
A jelszó első karaktere a jelentkező vezetéknevének első karaktere, második karaktere pedig utónevének első karaktere.
Vegyük, hogy a név az A2 cellában van. A Vkezdő képlete =BAL(A2;1),
az Ukezdőé =KÖZÉP(A2;SZÖVEG.KERES(" ";A2)+1;1)
A Hanyadik a HOL.VAN függvénnyel kereshető ki – ne feledkezz meg az esetleges címsorról sem, ha a függvényed az A oszlopban keres, ebben az esetben le kell vonni belőle 1-et.
A többit biztosan kitalálod, azokhoz kellene a txt fájl.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
Snoop-y
veterán
Sziasztok,
Az alabbiban kernem a segitsegeteket:
Stacked chartot szeretnek csinalni de kicsit bonyolultabban/reszletesebben mint amit alapban lehet vele.
Probaltam megcsinalni de nem nagyon jutok elobbre
Azt szeretnem latni eredmenykent amit az E oszlopba belerajzoltam a kis kezemmel.
Vagyis az oszlopnak 60 magasnak kellene lennie es tartalmaznia kellene melyik szinbol mennyi van.
A konnyebb erthetoseg kedveert mindegyikbol ugyanannyit raktam a tablaba ( szinenkent 20 )
Viszont arnyalat szerinti bontasban is szeretnem latni ugyanazon a charton. ( tehat a jobb oldali megoldas nekem nem jo mert az kulon oszlopot csinal )
Nyilvan az adat elrendezes sem jo szoval szivesen varom az otleteket
New level... Advertising has us chasing cars and clothes, working jobs we hate so we can buy shit we don’t need
Delila_1
Topikgazda
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
Snoop-y
veterán
A problema ott kezdodik, hogy az adatokat sem sikerul egy oszlopban megjeleniteni.
New level... Advertising has us chasing cars and clothes, working jobs we hate so we can buy shit we don’t need
Delila_1
Topikgazda
olyat tud-e az excel egyszerűen (makróval persze), hogy megkeres egy értéket egy tömbben (1D vagy több), és visszaadja annak a pozícióját?
köszönöm!
"a jövötsajnos nemlehet tudni csakhamárotvagy deakormegmár azajelen"
Snoop-y
veterán
Koszonom de ez megy nekem is ugy hogy a relevans oszlopok egymas mellett vannak
New level... Advertising has us chasing cars and clothes, working jobs we hate so we can buy shit we don’t need
Snoop-y
veterán
Ha csak egy oszlopban keresel akkor alabbi jo lehet:
D oszlopban ( elso 100 sorban ) megkeresi az "erteket" es megmondja hanyadikban talalta meg:
=MATCH(2,INDEX(1/(D$1$100="ertek"),0))
( az nem smiley hanem : D space nelkul )
[ Szerkesztve ]
New level... Advertising has us chasing cars and clothes, working jobs we hate so we can buy shit we don’t need
még egy dologra nem tudok rájönni. vannak dátumaim éééé.hh.nn óó:pp formátumban, amiket eltárolok változókban. az olyan dátumokat, ahol az óra 00:00 éppen, a változóba csak éééé.hh.nn formátumban teszi bele, elmarad az óra kiírása. ha nem 00:00 hanem 01:00, vagy bármi más, akkor a teljes formátumot elrakja a változóba. van ötletetek, hogy mi lehet a probléma?
"a jövötsajnos nemlehet tudni csakhamárotvagy deakormegmár azajelen"
ildikol
újonc
Sziasztok, remélem tud valaki segíteni, excel makrot írnék, de elakadtam..
Van egy táblázatom, azt szeretném, ha tetszőleges soron ( a sorban tetszőleges cellán ) állva ugyanannak a sornak a Q oszlopába ugrana a kurzor, és oda betenne egy most függvényt, majd attól függően, hogy a P oszlopban milyen adat van ( legördülő listából választható, 3 féle adat lehet csak ), az egyik adat esetében egy köv munkalapra ugyanebben az xlsben másolja át az egész sort értékbeillesztéssel a következő üres sorba ( folyamatosan tölteném a táblát )
Remélem érthető voltam és tudtok segíteni, köszi előre is!
Snoop-y
veterán
Ez jobb viszont ez is egy oszlopban keres:
=ADDRESS(MATCH(F3,C:C,0),COLUMN(C1))
F3 ba beirod mit szeretnel keresni es az adott oszlopban pl C megkeresi neked es kiirja igy: $C$13
[ Szerkesztve ]
New level... Advertising has us chasing cars and clothes, working jobs we hate so we can buy shit we don’t need
Delila_1
Topikgazda
Az első makrót a laphoz rendeld. Gondolom, akkor kell másolni a sort, ha egyrészt a P oszlopban egy bizonyos érték van, másrészt ha a sor ki van töltve a P-ig. Az eseménykezelő makró ezeket a feltételeket figyeli.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 16 Then 'P oszlopba írtál
Application.EnableEvents = False
Cells(Target.Row, "Q") = Time 'aktuális idő beírása
Application.EnableEvents = True
If Cells(Target.Row, "P") = "Ezt kell másolni" Then 'ezt a szöveget írd át
Masol Target.Row 'Masol makró meghívása, az aktuális sor értékének átadásával
Else
Application.CutCopyMode = False
End If
End If
End Sub
A második makró, ami a másolást végzi, modulba kerüljön. Azért van szükség 2 makróra, mert a laphoz rendelt csak a saját lapján tud intézkedni, de a változó(ka)t, mint most az aktuális sor számát, át tudja adni a másiknak, ami végrehajtja a másolást.
Nálam a Munka1 lapra írok, a Munka2-re másol a makró. Ezeket írd át a saját lapjaid nevére.
Sub Masol(sor)
Dim usor As Long
usor = Application.CountA(Sheets("Munka2").Columns(1)) + 1
Sheets("Munka1").Rows(sor).Copy Sheets("Munka2").Cells(usor, 1)
Application.CutCopyMode = False
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.
Delila_1
Topikgazda
Az A1 cellába írtam a dátumot és időt, 2014.05.09 00:00. A format utasítással adhatod meg a kellő formátumot.
Sub ido()
Dim most As Date
most = Cells(1)
MsgBox Format(most, "yyyy.mm.dd hh:mm")
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.
alfa20
senior tag
nem a legelegánsabb megoldás, de majd jön Delila_1 és majd megoldja profin
Sub keres()
Dim keres As Variant
keres = InputBox("Keresendő szöveg, szám:", "Keresés")
Cells.Find(What:=keres, After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Activate
MsgBox ActiveCell.Address
End Sub
és meg is jött
[ Szerkesztve ]
"Az agy olyan, mint az ejtőernyő: csak akkor működik, ha nyitott." (Thomas Dewar)
Delila_1
Topikgazda
Csak egy apró egyszerűsítés.
Sub keres()
Dim keres As Variant, cim
keres = InputBox("Keresendő szöveg, szám:", "Keresés")
cim= Cells.Find(What:=keres, After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Address
MsgBox cim
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.
lenkei83
tag
Sziasztok!
Egy nagyon (számomra nem ) egyszerű dologra lenne szükségem VBA-ban.
Van 20 munkalapom, 10 x-re végzőik és 10 y-ra.
Szeretném egyszerre kijelölni csak az x végűeket.
Tudna valaki ebben segíteni?
köszi
Delila_1
Topikgazda
Ha egymás után következnek, állsz az első, és Shiftet nyomva tartva az utolsóra kattintasz.
Ellenkező esetben a Ctrl-t nyomd, közben egyenként kattints a fülekre.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
lenkei83
tag
Ez csak egy példa volt, ettől bonyolultabb a dolog. A kattintgatós megoldás nekem is megy, valami vba megoldásra gondoltam.
Delila_1
Topikgazda
Próbálkoztam, de nem jön össze.
Sub lapok()
Dim lap%, szoveg$
For lap% = 1 To Worksheets.Count
If Right(Sheets(lap%).Name, 1) = "x" Then
szoveg$ = szoveg$ & Sheets(lap%).Name & """" & ","
End If
Next
szoveg$ = Left(szoveg$, Len(szoveg$) - 2)
Sheets(Array(szoveg$)).Select
End Sub
Az utolsó sornál túlcsordulást jelez. Talán kiindulásnak jó.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
lenkei83
tag
Megoldottam máshogy...
Minden lapon van fix cellám ami nem változik:
Sub AR_APSELECT()
Dim SheetArray() As Variant
Dim ws As Worksheet
Dim indx As Integer
For Each ws In ThisWorkbook.Sheets
If ws.Range("A6") = "Company" Then
ReDim Preserve SheetArray(indx)
SheetArray(indx) = ws.Index
indx = indx + 1
End If
Next
If indx > 0 Then
Sheets(SheetArray()).Select
End If
End Sub
Delila_1
Topikgazda
Nagyon jó!
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
sutyimatyi
csendes tag
Sziasztok!
Köszönöm az előző segítségeket, kezd alakulni a táblázatom.
Mellékelten feltöltöttem egy képet arról, hogyan néz ki. A kérdésem az, hogyan lehet kiszámolni, hogy mennyi a várható túlóra. A sorok végén van egy összegzés, hogy mennyi a valós, és mennyi a tervezett óra, ami változhat. http://prohardver.hu/muvelet/tag_kep/karbantart.php?id=1158587
Van-e olyan függvény ami kiírja, hogy a valós sorban melyik cella az utolsó ami nem 0, és ha ez megvan akkor ehhez hozzáadja a tervezett sor összegét ettől a cellától. Remélem érthető voltam.
Köszönöm.
[ Szerkesztve ]
PistiSan
addikt
Sziasztok!
Excelben van egy importált táblázatom.
A gond ott van, hogy az oszlopokban szereplő adatoknál, van ahol egy szóköz, van ahol 2 is van.
"B" oszlopban kilométeróra állások vannak, itt minden esetben 2db szóköz van az óraállás előtt.
Ezekkel a számadatokkal így nem tudok dolgozni.
Valahogy meg kellene oldanom, hogy minden szóköz eltűnjön az oszlopokból.
Így sikerült is eltüntetni: =JOBB(B1;(HOSSZ(B1)-2))
Viszont ha tovább dolgozom az adatokkal, valamiért hibákat kapok, ha a számított érték helyett rendesen megadom a számot kézzel, akkor minden rendben van!
Van valami ötletetek?
Delila_1
Topikgazda
A TRIM függvény levágja a hivatkozott cella elejéről és végéről a felesleges szóközöket.
=trim(B1)
Az így kapott segédoszlop képleteket tartalmaz, ezért érdemes másolni, majd az eredeti helyére irányítottan, értékként beilleszteni.
Az eredmény szöveg típusú lesz, át kell alakítani számokká, így.
[ 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.
Delila_1
Topikgazda
Nincs jogosultságom a kép megtekintéséhez, de a lenti kép talán segít.
A B16, C16, és C18 cellák formátuma [ó]:pp.
[ 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.
lazlogogola
tag
Sziasztok!
Volna egy gondom. Lehet egyik excellből a másikban található listára hivatkozni?
1. excellben van egy névsor pl. A1-től A300-ig (itt valósznű folyamatosan bővül a névsor)
2.-ik excellben szeretném megjeleníteni egy legördülő listában ezeket a neveket.
Egy excellen belül külön munkalapokon megtudom csinálni,de egy külső excellből nem.
Help!!!
gobe22
csendes tag
Nagy szükségem lenne egy olyan függvényre, ami egy cellában levő vesszőkkel elválasztott számokat/szavakat növekvő sorba rendez szintén vesszőkkel elválasztva.
Azt hittem alapból létezik ilyen függvény, desehol sem találom.
Előre is köszi a segítséget!
pdw_ph
tag
1. Eredeti listaban a A1:A300-at elnevezed (bal felso sarokban ahol irja h A1 stb. oda beirod pl. hogy "Lista".
2. Masik fileban a Data Validationnel a sourcet ugy adod meg hogy =File1.xls!Lista
Elvileg mennie kene, de nem probaltam ki.
Delila_1
Topikgazda
=[InnenMásol.xlsx]InnenMásolLapneve!A1
Figyelj a kiterjesztésre!
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
Delila_1
Topikgazda
Több lépésben lehet megoldani.
1. Kijelölöd a tartományt, a Szövegből oszlopok funkcióval oszlopokra bontod a szöveget, ahol határoló jelnek a vesszőt jelölöd be.
2. Újra kijelölöd a kibővült tartományt, Rendezés. Itt az Egyebek-nél a Balról jobbra funkciót választod.
3. Ezután újra összefűzöd az adatokat egy segédoszlopban, közöttük vesszővel: =A1 & "," & B1 & "," & C1 stb., ahány oszlopra bontotta szét a Szövegből oszlopok.
4. A segédoszlopot másolod, és az eredeti helyére illeszted be irányítottan, értékként.
5. Törlöd a feleslegessé vált oszlopokat, csak az A maradjon meg.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
lazlogogola
tag
ez nem megy
lazlogogola
tag
Az "innenmásol" helyére a hivatkoztt excell nevét adjam meg?
gobe22
csendes tag
Köszi a segítséget, ezzel egy nagy baj van, hogy nem engedi kijelölni az összes sort, hanem csak egyenként hajlandó sortolni. Erre tudsz vmi megoldást?
Delila_1
Topikgazda
Igen, a fájl nevét kiterjesztéssel, majd annak a lapnak a nevét, ahonnan másolsz.
A képletet lemásolva a többi sorban megkapod a 300 adatot.
[ 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.
Delila_1
Topikgazda
Próbáld újra, nálam nincs egy zokszava, megcsinálja.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
lazlogogola
tag
Naon hülye vagyok,ez nem megy.
1. file neve ahonnan másolnám a névsort : 2másolat.xls (itt A1-től A300-ig megadtam a lista nevét "krónikus")
2. file neve ahova tenném : Betegek kr.xls
?
gobe22
csendes tag
Delila_1
Topikgazda
Nem kell lista.
A betegek kr.xls-be írd be a képletet oda, ahova másolni akarsz.
=[2másolat.xls]krónikus!A1 ha a lap neve, ahonnan másolni akarsz, krónikus.
A képletet lemásolod a 300. sorig.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
Delila_1
Topikgazda
Hány vesszővel ellátott adatod van soronként? Írok rá egy makró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.
gobe22
csendes tag
Hú ezerköszi! 1 és 12 között van az elválasztott elemek száma.
lazlogogola
tag
Megcsináltam,hivatkozik is.
Felkinálta forrásban a filet,a munkalapot és a végén ezt írta ki: #NÉV?
sutyimatyi
csendes tag
Delila_1
Topikgazda
Kicsit sok volt a buktató.
Kijelölöd a tartományt az A oszlopban, és indítod a makrót.
Sub VizszRend()
Dim usor As Long, sor As Long
Application.DisplayAlerts = False
'Szövegből oszlopok
Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo _
:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _
Array(7, 1), Array(8, 1), Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1)), _
TrailingMinusNumbers:=True
'Rendezés soronként
usor = Application.CountA(Columns(1))
For sor = 1 To usor
Rows(sor).Select
Selection.Sort Key1:=Range("A" & sor), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
Next
'Összefűzés az N oszlopban
Range("N1:N" & usor).FormulaR1C1 = _
"=RC[-13]&"",""&RC[-12]&"",""&RC[-11]&"",""&RC[-10]&"",""&RC[-9]&"",""&RC[-8]&"",""&RC[-7]&"",""&RC[-6]&"",""&RC[-5]&"",""&RC[-4]&"",""&RC[-3]&"",""&RC[-2]"
'N oszlop irányított beillesztése az A-ba
Range("N:N").Copy
Range("A1").PasteSpecial xlPasteValues
'Segédoszlopok törlése
Range("B:N").ClearContents
'Többszörös vesszők törlése
sor = 0
Do While sor < 3
Cells.Replace What:=",,", Replacement:="", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
sor = sor + 1
Loop
'Utolsó vessző törlése képlettel a H oszlopba
Range("H1:H" & usor).FormulaR1C1 = _
"=IF(RIGHT(RC[-7],1)="","",LEFT(RC[-7],LEN(RC[-7])-1),RC[-7])"
'H oszlop másolása az A-ba
Range("H:H").Copy
Range("A1").PasteSpecial xlPasteValues
Range("H:H").ClearContents 'H oszlop törlése
Application.DisplayAlerts = 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.
gobe22
csendes tag
Lefutattam, de sajnos amint megtalálja az első esetet a 160.dik sor környékén, azt megcsinálja, de a többit már nem csinálja meg, hanem kitörli a mezőket. Van valami korlátozás rajta amit ki lehetne terjeszteni?
gobe22
csendes tag
Kiszedtem az üres sorokat, így már tökjól műxik.
Még esetleg ki lehet egészíteni azzal, hogy az üres sorokat hagyja változatlanul?
Ugye akármilyen sok sorból álló adatoknál is műxik, ugye?
Delila_1
Topikgazda
Az üres sorok törlésével kezd, nem szükséges a kijelölés, azonnal futtatható. Feltételezem, hogy a txt fájlból az adatokat az A1-től kezdve másolod be.
Sub VizszRend()
Dim usor As Long, sor As Long
Application.DisplayAlerts = False
'Üres sorok törlése
Columns("A:A").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
'Szövegből oszlopok
usor = Application.CountA(Columns(1))
Range("A1:A" & usor).TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo _
:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _
Array(7, 1), Array(8, 1), Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1)), _
TrailingMinusNumbers:=True
'Rendezés soronként
For sor = 1 To usor
Rows(sor).Select
Selection.Sort Key1:=Range("A" & sor), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
Next
'Összefűzés az N oszlopban
Range("N1:N" & usor).FormulaR1C1 = _
"=RC[-13]&"",""&RC[-12]&"",""&RC[-11]&"",""&RC[-10]&"",""&RC[-9]&"",""&RC[-8]&"",""&RC[-7]&"",""&RC[-6]&"",""&RC[-5]&"",""&RC[-4]&"",""&RC[-3]&"",""&RC[-2]"
'N oszlop irányított beillesztése az A-ba
Range("N:N").Copy
Range("A1").PasteSpecial xlPasteValues
'Segédoszlopok törlése
Range("B:N").ClearContents
'Többszörös vesszők törlése
sor = 0
Do While sor < 3
Cells.Replace What:=",,", Replacement:="", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
sor = sor + 1
Loop
'Utolsó vessző törlése képlettel a H oszlopba
Range("H1:H" & usor).FormulaR1C1 = _
"=IF(RIGHT(RC[-7],1)="","",LEFT(RC[-7],LEN(RC[-7])-1),RC[-7])"
'H oszlop másolása az A-ba
Range("H:H").Copy
Range("A1").PasteSpecial xlPasteValues
Range("H:H").ClearContents 'H oszlop törlése
Application.DisplayAlerts = False
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.
gobe22
csendes tag
Igazából kicsit bonyolultabb a történet, mert 2 oszlop van (A és B) ahol A-ban végig van egy többezres lista, a B-ben pedig csak ha van hozzátartozó adatok vesszővel elválasztva. Ezért kérdeztem hogy meg lehet-e oldani hogy az üres sorokat is meghadja, ráadásul a B oszlopba kerülnek a rendezendő elemek.
De óriási segítség amit eddig is küldtél, mert vlookupolással így is meg tudom oldani belőle, csak van így még pár plusz lépés.
De ezer köszi az eddigieket!