Avatar billede familienriis Nybegynder
01. januar 2007 - 17:35 Der 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)
Avatar billede excelent Ekspert
01. januar 2007 - 17:50 #1
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
Avatar billede familienriis Nybegynder
01. januar 2007 - 18:18 #2
Perfekt
Tusind tak

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
Avatar billede excelent Ekspert
01. januar 2007 - 18:30 #3
det vil jeg tro kikker på det efter spisetid ok !
Avatar billede familienriis Nybegynder
01. januar 2007 - 18:46 #4
Det lyder rigtig godt :-)
Avatar billede excelent Ekspert
01. januar 2007 - 19:16 #5
her er den første

Sub Nul()
Dim t, t2
For t = 3 To 500
For t2 = 7 To 31 Step 2
If Cells(t, t2) <> "" Then Cells(t, t2) = 0
Next
Next
End Sub
Avatar billede excelent Ekspert
01. januar 2007 - 19:19 #6
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
Avatar billede familienriis Nybegynder
01. januar 2007 - 20:32 #7
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" ?
Avatar billede excelent Ekspert
01. januar 2007 - 20:35 #8
er det Nul eller cNul ?
Avatar billede familienriis Nybegynder
01. januar 2007 - 20:36 #9
jeg er kun kommet til nul
Jeg tester lige den anden med det samme
Avatar billede excelent Ekspert
01. januar 2007 - 20:40 #10
nå ok har nærlæst dit spørgsmål
det er lidt modstridende formuleret som jeg læser det :-)
Avatar billede familienriis Nybegynder
01. januar 2007 - 20:42 #11
Det beklager jeg. :-)
Er du med på hvad jeg mener nu eller skal jeg prøve at formulere spg. igen?
Avatar billede excelent Ekspert
01. januar 2007 - 20:47 #12
Sub Nul()
Dim t, t2
on error resume next
For t = 3 To 500
For t2 = 7 To 31 Step 2
If Cells(t, t2) = "" Then Cells(t, t2) = 0
Next
Next
End Sub

prøv lige om det er nok med denne error handling ellers sig til
indsætter kun 0 hvis cellen er tom i hver anden kolone G:AE
Avatar billede excelent Ekspert
01. januar 2007 - 20:51 #13
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
Avatar billede familienriis Nybegynder
01. januar 2007 - 20:55 #14
Nu virker det.
Det var lige det jeg skulle bruge.
Mange tak for hjælpen.
Avatar billede excelent Ekspert
01. januar 2007 - 20:56 #15
velbekom
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