Deppodi Postad Oktober 12, 2022 Dela Postad Oktober 12, 2022 Hej, Jag funderar på om det går att skriva ut ett makro som fyller i kolumn B åt mig baserat på värdet i H3. I H3 har jag =COUNTA(G2:G100). I mitt exempel ovan här så blir värdet i H3, fem (5). Kan jag då skriva koden så att ordet "Blå" ska skrivas ut fem gånger i kolumn B? Värdet i H3 kommer att variera från 1-100. Jag hittade en youtubevideo som gav mig en ungefärlig förklaring, med koden nedan, men jag vill inte alltid ha x = 1 to 100. Jag vill att X ska bara 1 to 5 om värdet i H3 är fem. Sub ExampleBlå() Dim x As Integer For x = 1 To 100 Range("B" & x).Select If Range("B" & x).Value = "Stop" Then Exit For ElseIf Range("B" & x).Value = "" Then Range("B" & x).Value = "Info" End If Next x End Sub Citera Länk till kommentar Dela på andra webbplatser Fler delningsalternativ...
Lösning MH_ Postad Oktober 12, 2022 Lösning Dela Postad Oktober 12, 2022 (redigerade) Formler (i B1): Texten blå 5 ggr i samma cell =REP("Blå";H3) Texten blå fem ggr i fem olika celler: =OM(SEKVENS(H3)>0;"blå") VBA om du vill träna på det: Sub ExampleBlå() Dim i As Integer Dim iAntalBlå As Integer Dim rStartCell As Range 'Hämta värdet från rätt cell (H3) AntalBlå = Sheets("Blad1").Range("H3").Value ' Ange var din startcell ligger. Obs att rSstartCell ' BLIR B1 när man kör Set. Den hämtar inget värde utan ' den blir verkligen b1 Set rStartCell = Sheets("Blad1").Range("B1") ' avsluta om H3 har värdet 0 If AntalBlå = 0 Then Exit Sub ' sen kör du loopen For i = 1 To AntalBlå Sheets("Blad1").Range("B" & i).Value = "Blå" Next i ' Alternativ loop ' Jag skulle personligen ha använt den här koden med .Offset i loopen. ' Men då får du -1 som kan vara svårt att förstå när ' du kollar koden om ett år . For i = 0 To (AntalBlå - 1) rStartCell.Offset(i, 0).Value = "Blå" Next i End Sub Redigerad Oktober 12, 2022 av MH_ 1 Citera Länk till kommentar Dela på andra webbplatser Fler delningsalternativ...
Deppodi Postad Oktober 12, 2022 Författare Dela Postad Oktober 12, 2022 Tusen tack! Snabbt och exemplariskt svar som vanligt! Ska prova denna också 😀 Sjukt kul med VBA när man ser vilka möjligheter som öppnas! Citera Länk till kommentar Dela på andra webbplatser Fler delningsalternativ...
Recommended Posts
Delta i dialogen
Du kan skriva svaret nu och registrera dig senare, Om du har ett konto, logga in nu för att svara på inlägget.