- Windows 11
- Mikrotik routerek
- Bitcoin topic
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Synology NAS
- Videó stream letöltése
- Mesterséges intelligencia topik
- One otthoni szolgáltatások (TV, internet, telefon)
- Kodi és kiegészítői magyar nyelvű online tartalmakhoz (Linux, Windows)
- Crypto Trade
-
IT café
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
-
Fferi50
Topikgazda
-
Fferi50
Topikgazda
válasz
twingos #53840 üzenetére
Szia!
Próbáld ezt a képletet a B2 cellába:=HELYETTE(KÖZÉP($A2;SZÖVEG.KERES(B$1;$A2)+HOSSZ(B$1)+1;4);" ";"")
A címzésnél figyelj a $ -ra. Így a képlet húzható jobbra és lefelé is.
Ez minden magyar verzióban műxik. Angolban a megfelelő angol függvénynevek kellenek és az elválasztójel is vessző.
A HELYETTE függvény azért kell, hogy a nem után ne maradjon szóköz.
Üdv. -
Pakliman
tag
válasz
twingos #37659 üzenetére
Szia!
Én létrehoztam egy új munkafüzetet.
Abban létrehoztam 25 munkalapot (a neveik sorban: Munka1, Munka2, stb. Munka25)
AzIf Mid(ws.Name, 6) >= 1 And Mid(ws.Name, 6) <= 20 Then
sor ezeknek a neveknek megfelelően ellenőriz. Ha nálad nem ezek a nevek vannak (gyanítom), akkor más szisztéma szerint kell megtalálnod, hogy az a munkalap kell-e neked (Pl.: egy
Select Case
válogatás).
Szerintem itt lesz a gond egyébként
Ha leírod a figyelendő munkalapok neveit, akkor tudok többet segíteni.A munkalapok kijelölését azért nem láthatod, mert egyrészt "gyors" a program, másrészt pedig a progi végén visszaállítom az eredetileg aktív (
Set wsA = ActiveSheet
) munkalapot (wsA.Select
).[ Szerkesztve ]
-
Pakliman
tag
válasz
twingos #37653 üzenetére
Szia!
Egy lehetséges megoldás...
Public Sub qa()
Dim wsA As Worksheet: Set wsA = ActiveSheet
Dim wsArr
Dim wsDb As Integer
Dim ws As Worksheet
ReDim wsArr(0 To 0)
'Van egy táblázatom, ami 25 sheet-et tartalmaz. Nekem csak a 1-től 20. oldalig fontosak...
For Each ws In Worksheets
If Mid(ws.Name, 6) >= 1 And Mid(ws.Name, 6) <= 20 Then 'itt kell azonosítani a munkalapot, hogy kell-e egyáltalán
'ha az I3-as cella értéke nem üres...
If Not IsEmpty(ws.Range("I3")) Then
'... és nullánál nagyobb...
If ws.Range("I3") > 0 Then
wsDb = wsDb + 1
ReDim Preserve wsArr(1 To wsDb)
wsArr(wsDb) = ws.Name
End If
End If
End If
Next ws
If wsDb > 0 Then
Sheets(wsArr).Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:="d:\Ez az új.pdf"
End If
wsA.Select
End Sub[ Szerkesztve ]
-
lenkei83
tag
válasz
twingos #29098 üzenetére
Szia!
Két kérdésem is van:
Az egyik, hogy melyik oszlopban kell figyelembe venni, az utolsó aktív sort?
A másik, hogy milyen exceled van? Ha 2007 vagy frissebb, akkor én így használnám a képletet:
=HAHIBA(HOL.VAN(V2;AB:AB;0);"") --> A V:V-t lecseréltem V2-re, feltételezve, hogy az első sor fejlécet tartalmaz:Ha 2007 előttit használsz akkor pedig hasonló mint a tiéd: =HA(HIBÁS(HOL.VAN(V1;AB:AB;0));"";HOL.VAN(V1;AB:AB;0))
A kód pedig ennyi lenne 2007-es excelt (vagy későbbit) feltételezve
Sub InsertFormula()
Range("X2:X" & Cells(Rows.Count, "A").End(xlUp).Row).Formula = "=iferror(match(V1,AB:AB,0),"""")"
End SubAmire figyelned kell: X2:X tehát az X oszlop második sorától indul a képlet, ha az első sorba is kell, akkor X1-re javítsd.
Valamint a Cells(Rows.Count, "A") az az oszlop, ahol az utolsó aktív sort kell figyelni, itt az "A"-t módosítsd ha szükséges.
üdv
[ Szerkesztve ]
-
Delila_1
veterán
válasz
twingos #28473 üzenetére
Formázd meg a D oszlopot előre, legyen # ##0" db" az egyéni kategóriában.
Rendeld a lapodhoz a lenti makrót:Private Sub Worksheet_Change(ByVal Target As Range)
Dim talal, WF As WorksheetFunction
Set WF = WorksheetFunction
Application.EnableEvents = False
If Target.Column = 1 Then
If WF.CountIf(Columns(1), Target) > 1 Then
If WF.CountIf(Columns(5), Target) = 0 Then
talal = Range("E" & Rows.Count).End(xlUp).Row + 1
Range("E" & talal) = Target
Range("D" & talal) = WF.CountIf(Columns(1), Target)
Else
talal = Application.Match(Target, Columns(5), 0)
End If
Range("D" & talal) = WF.CountIf(Columns(1), Target)
End If
End If
Application.EnableEvents = True
End Sub -
Delila_1
veterán
válasz
twingos #28471 üzenetére
Legyen a B2 képlete =DARABTELI(A$2:A2;A2). Ügyelj a $ jelre. Ezt lemásolod a többi adatod mellé. Ahol 1-nél nagyobb számot látsz, ott már nem először szerepel az adat. Szűrheted is az oszlopot az 1-nél nagyobb értékekre.
Más oszlopba is írhatod a képletet, ha a B foglalt.
Adhatsz A2-től az oszlopodra feltételes formázást. A képlet =DARABTELI(A:A;A2)>1
Új hozzászólás Aktív témák
- Új design és okosabb AI: megjött a Galaxy S25 készülékcsalád
- PROHARDVER! feedback: bugok, problémák, ötletek
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Digitális Állampolgárság Program DÁP
- Xbox Series X|S
- Filmgyűjtés
- Formula-1
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Házimozi belépő szinten
- Mikrokontrollerek Arduino környezetben (programozás, építés, tippek)
- További aktív témák...