- iPhone topik
- Samsung Galaxy S23 Ultra - non plus ultra
- Milyen okostelefont vegyek?
- Mobil flották
- Redmi Note 13 Pro 5G - nem százas, kétszázas!
- iPaden is vége az App Store monopóliumának
- Termékoldal buktatta le a Huawei Watch Fit 3-at
- Poco X6 Pro - ötös alá
- Nothing Phone (1) - nem semmi (2)
- Yettel topik
Hirdetés
-
Képeken az egyik kameráját elvesztő Sony Xperia 10 VI
ma Részletes anyag került fel az internetre a Sony idei középkategóriás telefonjáról, három helyett két hátlapi kamera várható.
-
Sokat fogyaszt az AI, egyre több az adatközpont, kell az atomenergia
it Az AI-t kiszolgáló adatközpontok olyan nagy energiaigénnyel bírnak, hogy egyre több atomenergiára van szükség.
-
A virágcsokor mellé hardvert is ajándékozhatunk anyák napján
ph A héten desktop PC-k, monitorok, gamer kiegészítők és házak vannak a kirakatban.
-
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
-
Delila_1
Topikgazda
válasz benjoe1 #3817 üzenetére
Hátha még nem késő.
Sub sorbeszuras()
usor = Range("A65536").End(xlUp).Row
For sor = Range("A65536").End(xlUp).Row To 2 Step -1
Cells(sor, 1).Select
Selection.EntireRow.Insert
Next
End SubProgramozó: 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
válasz benjoe1 #3820 üzenetére
A Selection.Offset(3.1).Select sort itt nem értem, meg szerintem a cikluson belül módosítani kellene a kijelölés helyét. Nálad működött?
Az enyémben az usor kezdetű sor felesleges, de nem árt senkinek. Előbb a ciklust az usorig vittem, aztán a módosítottban benne hagytam a szemetet.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
válasz benjoe1 #25572 üzenetére
Szűröd az A oszlopot, majd indítod a lenti makrót.
Sub Rejt()
Dim sor As Integer, oszlop As Integer
Application.ScreenUpdating = False
sor = Range("A" & Rows.Count).End(xlUp).Row
For oszlop = 2 To 200
If Cells(sor, oszlop) = "" Then
Columns(oszlop).Hidden = True
Else
Columns(oszlop).Hidden = False
End If
Next
Application.ScreenUpdating = True
End SubProgramozó: 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
válasz benjoe1 #44199 üzenetére
Makróval megoldható.
Első oszlop projektek, másodikba ír a makró, 3-tól az első sorban vannak a hetek.
A makrót modulba tedd, a füzetet makróbarátként kell mentened.Sub Heti_Arbevetel()
Dim oszlop As Integer, uoszlop As Integer, sor As Long
Columns("B:B") = ""
Range("B1") = "Tervezett" & vbLf & "árbevételek"
sor = 2: uoszlop = Cells(1, Columns.Count).End(xlToLeft).Column
Do While Cells(sor, 1) <> ""
For oszlop = 3 To uoszlop
If Cells(sor, oszlop) > "" Then Cells(sor, 2) = Cells(sor, 2) & Cells(1, oszlop) & ", "
Next
If Len(Cells(sor, 2)) > 0 Then Cells(sor, 2) = Left(Cells(sor, 2), Len(Cells(sor, 2)) - 2)
sor = sor + 1
Loop
Columns("B:B").EntireColumn.AutoFit
End SubProgramozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Mutt
aktív tag
válasz benjoe1 #44180 üzenetére
Szia,
Makrómentesen 2 megoldás:
1. A Projektneveket egy Kimutatással soroltam fel alul.
2. B10-ben ez a csúnya tömbképlet van.=HA(A10<>"";SZÖVEGÖSSZEFŰZÉS(";";IGAZ;HA(ELTOLÁS($B$1;HOL.VAN($A10;$A:$A;0)-1;;;DARAB2($1:$1)-1)>0;ELTOLÁS($B$1;0;;;DARAB2($1:$1)-1);""));"")
Kell hozzá Excel 2016-tól elérhető SZÖVEGÖSSZEFŰZÉS, a végén CSE-t kell nyomni. Másold le sokszor, hogyha új projekt jön akkor automatikusan megjelenjen. Ha az oszlopok száma nem bővül (vagyis nem hétről-hétre adjátok hozzá őket, akkor a második ELTOLÁST le lehet cserélni fix tartományra, pl. $B$1:$BA$1-re)
2. Excel 2010-től van Power Query, amiben kb. 10 lépés. A lényeg az ún. UNPIVOT (magyarul elemi értékre bontás).
üdv
A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel
-
Delila_1
Topikgazda
válasz benjoe1 #52406 üzenetére
Egy rövid makróval meg lehet oldani. Makróbarátként kell mentened a füzetet.
Az A10 helyett más cellába is adhatod az eredményt.Sub Kigyujtes()
Dim sor As Integer, szoveg As String
sor = 2
Do While Cells(sor, 2) > ""
If Cells(sor, 3) <> "" Then szoveg = szoveg & Cells(sor, 2) & ","
sor = sor + 1
Loop
Range("A10") = Left(szoveg, Len(szoveg) - 1)
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.
Új hozzászólás Aktív témák
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen
Cég: Promenade Publishing House Kft.
Város: Budapest