01. januar 2007 - 17:35Der er
14 kommentarer og 1 løsning
Gentage tekst i den aktuelle celle i de næste 5-10 celler
Jeg vil gerne oprette en makro der kan aflæse den værdi der er aktiv og så indsætte den i nogle bestemte celler i samme række efterfølgende:
Det område makroen skal dække er kol g:AE Men det er kun hver anden celle der skal indsættes tal i. altså: g, i, k, m, o, osv.
Hvis jeg står i g skal den aflæse denne celle og indsætte i i, k, m, o osv. Hvis jeg eks. står i cellen m skal den aflæse denne værdi og indsætte i o, q, s osv.
Den skal altså kun indsætte værdien i de celler der står til højre for den aktive celle (i området g:ae)
Sub tst() Dim x, y, t If ActiveCell.Column < 7 Then Exit Sub x = ActiveCell.Value: y = ActiveCell.Row For t = ActiveCell.Column + 2 To 31 Step 2 Cells(y, t) = x Next End Sub
Jeg har lige et lille tillægssørgsmål som jeg håber at kunne få lov til at presse ind :-)
Kan man lave en makro der indsætter "0" i alle felter der ikke er tomme i området g:ae (igen kun i g, i, m, osv.) Men denne gang skal der ikke tages højde for om man står i g eller i eller m. Den skal bare indsætte 0 i alle felter der ikke allerede står noget i. Denne makro skal køres i linierne 3-500
Og så lige en lille af-art af denne også:
Hvis c kolonnen IKKE er tom skal den indsætte 0 i alle de felter der ikke er tomme i området g:ae (igen kun i hjver anden cellle) Denne makro skal køres i linierne 3-500
Sub cNul() Dim t, t2 For t = 3 To 500 If Cells(t, 3) <> "" Then For t2 = 7 To 31 Step 2 If Cells(t, t2) <> "" Then Cells(t, t2) = 0 Next End If Next End Sub
Jeg kan ikke rigtig få den til at virke. Den overskriver alle mine tal som står i de enkelte celler med 0 Den skal kun indsætte 0, hvis der IKKE står noget i cellen i forvejen
Da nogle af mine linier er låste, kan jeg rende ind i problem, hvis den ikke kan indsætte et 0 i disse linier. Kan man sørge for at den bare fortsætter i de næste linier, hvis den får "en fejlmelding" ?
Sub cNul() Dim t, t2 On Error Resume Next For t = 3 To 500 If Cells(t, 3) <> "" Then For t2 = 7 To 31 Step 2 If Cells(t, t2) = "" Then Cells(t, t2) = 0 Next End If Next End Sub
indsætter kun 0 hvis kolonne C ikke er tom men cellen er tom i hver anden kolone G:AE
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.