-
Fototrend
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
-
ulrik19
tag
Én így csinálnám. Ehhez a makróhoz célszerű hozzárendelni egy billentyű-kombinációt is.
Public Sub ktgelosztas()
Dim cella As Object, osszeg As Integer
osszeg = Int(Val(InputBox("Felosztandó összeg a kijelölt cellák között:") / Selection.Count))
For Each cella In Selection
cella.Value = Val(cella.Value) + osszeg
Next
End SubHasználata:
kijelölöd azokat a cellákat, amikre szét akarod osztani az értéket. (a ctrl nyomva tartva az egérrel ugye tudsz egymástól független cellákat sorban kijelölni, ahányat csak szeretnél)Majd indítod a makrót (pl. a hozzárendelt billentyűkombinációval).
A progi bekéri a számot, amit szétoszt annyi részre, ahány cellát kijelöltél, és a kijelölt cellák értékét növeli a rá jutó résszel. (ha valamelyik kijelölt cellában szöveg volt, akkor azt nullának értelmezi, ha szöveget adsz be a felugró ablakban, akkor nullát ad mindenhova, vagyis nem változik az érték. Ha valamelyik kijelölt cellában képlet van, akkor az felül fog íródni a konkrét értékkel)
hajrá!
-
Delila_1
veterán
Na még egy utolsó. A költségek nevei az A1:A10 tartományban vannak, az eddigi összegek pedig B1:B10-ben.
Állítsd pirosra azokat az összegeket (B oszlop), ahova az új összeget szét akarod osztani.
A szétosztandó összeget írd be a D1-be.Sub Eloszt_1()
For sor = 1 To 10
If Cells(sor, 2).Font.ColorIndex = 3 Then Db = Db + 1
Next
For sor = 1 To 10
If Cells(sor, 2).Font.ColorIndex = 3 Then
Cells(sor, 2) = Cells(sor, 2) + Round(Cells(1, 4) / Db)
End If
Next
End SubA makró végig szalad a B1:B10 tartományban, és összeszámolja a piros karakteres cellákat, ezek darabszáma lesz az osztó. Újra végig lépked ugyanott, és a piros cellák tartalmához hozzáadja a D1-ben talált összeg annyiad részét, ahány piros cellát talált.
Azt hiszem, ez volt az eredeti kérdésed. -
Delila_1
veterán
Akkor a personal.xls-be vidd be:
Function Eloszt(Összeg As Double, Részre As Integer)
Eloszt = Összeg / Részre
End FunctionKijelölöd a cellákat, beírod: =Eloszt(26253;3), és Ctrl+Enterrel egyszerre beviszed a kijelölt cellákba. Az osztó és osztandó persze minden esetben más lehet.
Új hozzászólás Aktív témák
- GYÖNYÖRŰ iPhone 12 Mini 64GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3647
- HP 24" IPS LED FULL HD monitor 24fh 4HZ37AA
- HIBÁTLAN iPhone 14 128GB Purple -1 ÉV GARANCIA - Kártyafüggetlen, MS3528, 93% Akkumulátor
- Apple iPhone 13 128GB, Kártyafüggetlen, 1 Év Garanciával
- Dell XPS 13 9370 - 9380 UHD touch, 16GB RAM, 256-512GB SSD, jó akku, szép állapot, számla, garancia
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: Laptopműhely Bt.
Város: Budapest