PNG32 PNG32 PNG32 PNG32
PNG32
Forum Excel, VBA, VSTO, Exceltips, Excelhj�lp PNG32 drivs av Excelspecialisten    Logga in     English
PNG32
PNG32 PNG32
PNG32

Logga in

PNG32

Du är inte inloggad. Logga in eller registrera dig för att skriva inlägg eller svara på inlägg.

För frågor om forumet, kontakta oss på webmaster@excelforum.se

Du är inte inloggad. Logga in eller registrera dig för att skriva inlägg eller svara på inlägg.

För frågor om forumet, kontakta oss på webmaster@excelforum.se

PNG32 PNG32
PNG32 PNG32
PNG32

Excelforum

PNG32

 
ForumForumDiskussionerDiskussionerVBAVBASkapa ett cycle sheet med slumpad ordningSkapa ett cycle sheet med slumpad ordning
Föregående Föregående
 
Nästa Nästa
Nytt inlägg
 2019-02-07 16:35
 

 

Hej!
Jag har 12 rader med text, där varje rad är namnet på ett moment som ska utföras.
Av dessa 12 vill jag kunna välja t.ex. att Rad 1 ska användas 3ggr, rad 2 5ggr etc. D.v.s jag vill kunna ställa hur många gånger varje rad ska användas.
Just nu använder jag rad 1-12 och kolumn A-E
Antalet kan jag skriva i kolumn F t.ex.

När jag valt antalet på varje, så vill jag enkelt skapa en lista, som jag sedan kan printa (ett cycle sheet) som innehåller alla dessa rader (dessa 12 * antalet, i en slumpad ordning. Listan kommer då förhoppningsvis bli ca 100-120 rader lång beroende på mina val såklart.

Någon som kan hjälpa mig med hur man kan göra detta?

Nytt inlägg
 2019-02-11 11:47
 
Hej Fredrik

Hör har du kod som gör det du ska, utgår ifrån att du använder kolumn F för antal rader. Bara att lägga in den i en modul i vbe och koppla ihop med knapp . Möjligtvis behöver du ändra bladnamnen, de ska vara döpta till vad respektive blad heter.
Mvh
Christian

Sub writeXtimes()

Dim ReadFromSh As Worksheet: Set ReadFromSh = ThisWorkbook.Sheets("Blad1")
Dim lRow As Long: lRow = Cells(Rows.Count, 1).End(xlUp).Row
Dim Rng As Range: Set Rng = ReadFromSh.Range("F1:F" & lRow)
Dim vnt As Variant: vnt = Rng
Dim PrintToSH As Worksheet: Set PrintToSH = ThisWorkbook.Sheets("Blad2")

PrintToSH.UsedRange.ClearContents
Dim i, k: k = 1
For i = 1 To UBound(vnt, 1)
PrintToSH.Range("A" & k & ":E" & (vnt(i, 1) + k)).Value = ReadFromSh.Range("A" & i & ":E" & i).Value
k = k + vnt(i, 1)
Next i

Dim newRng As Range: Set newRng = PrintToSH.Range("A1:F" & k)
Call RndRng(newRng, PrintToSH)

End Sub
Function RndRng(Rng As Range, ws As Worksheet)


Dim rngUpper As Long
Dim myRow As Long
rngUpper = Rng.Rows.Count

For myRow = 1 To rngUpper
ws.Cells(myRow, 6).Value = Int((rngUpper * 10 - 1 + 1) * Rnd + 1)
Next myRow

Rng.Sort Key1:=Range("F1"), Order1:=xlAscending, Header:=xlNo
Rng.Columns(6).ClearContents


End Function




Nytt inlägg
 2019-02-19 07:34
 

Hej Christian.

När jag klickar på knappen får jag 
"Run-time error '1004':

The sort reference is not valid. Make sure that it's within the data you want to sort,

and the first Sort By Box isn't the same or blank.

 

I debugen klagar den på:

Rng.Sort Key1:=Range("F1"), Order1:=xlAscending, Header:=xlNo

Nån ide?

Nytt inlägg
 2019-02-20 08:02
 
Hej hej

Ersätt :
Rng.Sort Key1:=Range("F1"), Order1:=xlAscending, Header:=xlNo

Med;
Rng.Sort Key1:=ws.Range("F1"), Order1:=xlAscending, Header:=xlNo

/c
Föregående Föregående
 
Nästa Nästa
ForumForumDiskussionerDiskussionerVBAVBASkapa ett cycle sheet med slumpad ordningSkapa ett cycle sheet med slumpad ordning

PNG32 PNG32
Excelforum drivs av Excelspecialisten som bedriver utbildning i Excel och VBA, tillhandahåller support och hjälp med Excel, utvecklar program i Excel. Är ni i behov av en konsult inom Excel, VBA eller VSTO, eller söker en excelkurs, kontakta oss.
Excelforum drivs av Excelspecialisten som bedriver utbildning i Excel och VBA, tillhandahåller support och hjälp med Excel, utvecklar program i Excel. Är ni i behov av en konsult inom Excel, VBA eller VSTO, eller söker en excelkurs, kontakta oss.
Copyright 2013 ExcelSpecialisten XLS AB   Användarvillkor  Personliga uppgifter