Jeg er i den situation at jeg skal finde den største sum af 4 sammenhængende værdier. Dvs jeg har en række med mange værdier men også med mellemrum. Her skal jeg finde den største værdi af fire sammenhængende værdier?? Håber i kan hjælpe!
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Antager værdierne står i kolonne A1:A100. I kolonne b1 skrives =IF(COUNT(A1:A4)=4;SUM(A1:A4);). Denne kopieres til B1:B100 Og så kan du finde max med =MAX(B1:B100)
Det skal nok laves med en makro. Prøv med nedenstående: Sub Macro1() Dim i As Integer 'række der opereres i Dim j As Integer 'summerer de 4 celler Dim k As Integer 'tæller ikke-tomme celler Dim l As Integer 'tæller antal celler Dim m As Integer 'Max Dim n As Integer 'Nummer på kolonne data skal sættes ind i n = 4 m = 0 j = 0 Lastrow = Cells(65356, 1).End(xlUp).Row For i = 1 To Lastrow For l = 0 To 100 j = j + Cells(i + l, 1) k = k + 1 If Cells(i + l, 1) = 0 Then k = k - 1 Else If k = 4 Then Cells(i, n) = j If m > j Then Else m = j End If End If End If Next j = 0 k = 0 Next Cells(i + 3, n) = m End Sub
Bemærk at n=4 forårsager at der bliver skrevet data ind i kolonne 4 (D). Der bør derfor ikke stå noget i den kolonne.
Hej Jens det lykkedes sgu! :) Det ser ud til at virke perfekt! Men hvordan kan jeg ændre i macroen så jeg får flere kolloner med? :) Altså så jeg gentager den her i kollonne E og finder største sum der? :)
Jeg har mine tal i kolonne A så kommer summen i kolonne B også markeringen om det er en af de fire i kolonne c og sådan kører Den 50 gange. Dvs næste talrække kommer i kolonne D osv.
Makroen checker hver 3. kolonne, og skriver i den efterfølgende kolonne summen af de 4 næste tal. I 3. kolonne bliver der indsat et 1-tal ved det første af de 4 største tal. Kolonne 2 og 3 slettes i begyndelsen af makroen. Håber det kan bruges.
Sub Macro1() Dim i As Integer 'række der opereres i Dim j As Long 'summerer de 4 celler Dim k As Integer 'tæller ikke-tomme celler Dim l As Integer 'tæller antal celler Dim m As Long 'Max Dim n As Integer 'Nummer på kolonne data skal sættes ind i Dim o As Integer 'Indikator for max. sum For n = 2 To 149 Step 3 Columns(n).Select Selection.ClearContents Next For n = 3 To 150 Step 3 Columns(n).Select Selection.ClearContents Next For n = 2 To 149 Step 3 m = 0 j = 0 Lastrow = Cells(65356, n - 1).End(xlUp).Row For i = 1 To Lastrow For l = 0 To 100 j = j + Cells(i + l, n - 1) k = k + 1 If Cells(i + l, n - 1) = 0 Then k = k - 1 Else If k = 4 Then Cells(i, n) = j If m > j Then
Else m = j o = i End If End If End If Next j = 0 k = 0 Next Cells(i + 3, n) = m Cells(o, n + 1) = 1 Next Range("A1").Select End Sub
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.