Avatar billede splokit Nybegynder
21. november 2006 - 14:33 Der er 9 kommentarer og
1 løsning

VB Hjælp plus 1

Skal bruge noget hjælp til at plusse 1 til en kode
C = 30 værdier
set c(skal have en +1 funktion) så x ikke vil angive dens tal.
den skal for hver værdi + 1
    For x = 1 To 33 step 5 'vil være c(1 to 6)
        Set c(x - 1) = Cells(1, 1).Offset(2 * (x - 1))
    Next x
det vil gøre at set C(1)  til C(6) har hver deres værdi
og skal kunne sætte den ind hvor man ønsker med
X fortæller rækken
men den fortæller også C()= x men den skal så tage C(1 til 6) for hver række
For x = 11 To 40
    Cells(10, 4).Offset(4 * (x - 1)).value = c(x - 1)
Next x

Er der en som kan se en løsning på mit problem!?

Sub ICopy()
Dim c(30) As Range
With Workbooks("text.xls").Sheets("Ark1")
    For x = 1 To 30
        Set c(x - 1) = Cells(1, 1).Offset(2 * (x - 1))
    Next x
End With
With Workbooks("text.xls").Sheets("Ark2")
For x = 11 To 40
    Cells(10, 4).Offset(4 * (x - 1)).value = c(x - 1)
Next x
End With
End Sub
Avatar billede excelent Ekspert
21. november 2006 - 20:19 #1
Sub ICopy()
Dim x
Sheets("Ark1").Activate
For x = 1 To 30
  Cells(1, 1).Offset(2 * (x - 1)).Copy Destination:=Sheets("Ark2").Cells(50, 4).Offset(4 * (x - 1))
Next x
End Sub
Avatar billede splokit Nybegynder
22. november 2006 - 08:39 #2
den skal ikke kopier cellen kun værdien ellers virker den

problemet er så at på ark1 er der 40 værdier række 1 6 11 16 21 26 osv.
For x = 1 To 200 Step 5
og på ark2 er de på 11 to 40 step 1
sådan det er bare copy som skal laves om.
Sheets("Ark1").Activate
Cells(1, 1).Offset(5 * (x - 1)).Copy Destination:=Sheets("ark2").Cells(11, 1).Offset(1 * (x - 1))
Avatar billede splokit Nybegynder
22. november 2006 - 09:20 #3
Sub ICopy()
Dim x
Sheets("Hur-Map").Activate
For x = 1 To 200 Step 5
  Cells(1, 1).Offset(5 * (x - 1)).Copy 'Række 1 Til 200 Hver Femte Række
  Next x
For u = x = 11 To 40 Step 1
  Destination = Sheets("Klar").Cells(11, 1).Offset(1 * (u - 1)) 'Række 11 Til 40 Hver Række
Next u
End Sub
Avatar billede splokit Nybegynder
22. november 2006 - 09:21 #4
sådan tænker jeg den skal gøre det men virker ikke :S
Avatar billede splokit Nybegynder
22. november 2006 - 09:25 #5
det er 2 for funktioner den skal køre sammen man kan kun få den til For * For
kan man
For Each x = 1 to 200 step 5
If x = 1 = 200 Step 5 Then
U = 11 To 40 Step 1
Avatar billede excelent Ekspert
22. november 2006 - 19:37 #6
prøv denne.- destinationsseller skal nok rettes til !

Sub ICopy()
Dim x, y(220)
Sheets("Hur-Map").Activate
For x = 1 To 200 Step 5
  y(x) = Cells(1, 1).Offset(5 * (x - 1), 0).Value 'Række 1 Til 200 Hver Femte Række
Next
For x = 1 To 200
  Sheets("Klar").Cells(11, 1).Offset(1 * (x - 1), 0) = y(x) 'Række 11 Til 40 Hver Række
Next
End Sub
Avatar billede excelent Ekspert
22. november 2006 - 19:46 #7
tror denne virker:

Sub ICopy()
Dim x, y(220)
Sheets("Hur-Map").Activate
For x = 0 To 39 'Step 5
  y(x) = Cells(x * 5 + 1, 1).Value 'Række 1 Til 200 Hver Femte Række
Next
For x = 0 To 39
  Sheets("Klar").Cells(11 + x, 1) = y(x) 'Række 11 Til 40 Hver Række
Next
End Sub
Avatar billede splokit Nybegynder
23. november 2006 - 09:09 #8
Yes den her virker
Sub ICopy()
Dim x, y(220)
Sheets("Hur-Map").Activate
For x = 0 To 39 'Step 5
  y(x) = Cells(x * 5 + 1, 1).Value 'Række 1 Til 200 Hver Femte Række
Next
For x = 0 To 39
  Sheets("Klar").Cells(11 + x, 1) = y(x) 'Række 11 Til 40 Hver Række
Next
End Sub

Takker igen, igen. Smid et svar...
Avatar billede excelent Ekspert
23. november 2006 - 10:32 #9
ok velbekom

obs du kan nøjes med Dim y(45)
Avatar billede splokit Nybegynder
23. november 2006 - 10:37 #10
Oki Prøver
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester