Avatar billede krohn Praktikant
03. juni 2007 - 15:43 Der er 13 kommentarer og
1 løsning

indsæt 3 linjer efter værdi i kolone

I kolone A står john og i kolone B står der smith. Hvis der så står Hansen i kolone B sakl der sættes 3 tomme linjer ind lige under den sidste smith,
Hvis værdien i kolonne ikke er smith, så skal der 3 tomme linjer ind lige under sidste smith.

Kan i hjælpe mig med en markro til dette?
Avatar billede excelent Ekspert
03. juni 2007 - 21:55 #1
det er lidt uklart om der også skal stå John i A ved Hansen
for at der skal indsættes nye rækker (denne gør)

Sub test()
rk = Cells(65535, 1).End(xlUp).Row
For t = 1 To rk
If Cells(t, "A") = "John" And Cells(t, "B") = "Hansen" Then
For s = 1 To rk
If Cells(s, "B") = "Smith" Then l = s + 1
Next
Range("A" & l).Resize(3, 1).EntireRow.Insert
End If
Next
End Sub
Avatar billede krohn Praktikant
03. juni 2007 - 22:13 #2
Nej det er hvis der ikke står smith i kolone B navne er frit taget
Avatar billede excelent Ekspert
03. juni 2007 - 22:32 #3
så koden skal gennemløbe alle celler i kolonne B
hvis der ikke står Smith så skal der indsættes 3
nye rækker under den sidste Smith ?
Avatar billede krohn Praktikant
04. juni 2007 - 06:52 #4
Ja det var lige det
Avatar billede krohn Praktikant
04. juni 2007 - 06:53 #5
Hvis der i kolonne står flg.
B1= Smith
B2= Smith
B3= Hansen
Så skal der 3 nye linjer ind mellem B2 og B3
Avatar billede excelent Ekspert
04. juni 2007 - 09:12 #6
prøv:

Sub test()
rk = Cells(65535, 1).End(xlUp).Row
For t = rk To 2 Step -1
If Cells(t, "B") <> "Smith" And Cells(t, "B").Offset(-1, 0) = "Smith" And Cells(t, "B") <> "" Then
Range("A" & t).Resize(3, 1).EntireRow.Insert
End If
Next
End Sub
Avatar billede krohn Praktikant
04. juni 2007 - 10:37 #7
Den kan jeg ikke helt få til at køre, jeg har skrevet smith i B1 til B3, og Hansen i B4. Men jeg kan ikke helt få den til.
Jeg har den i "Sheet 1"
Jeg ville gerne kalde den med en kanp på arket, har prøvet at kalle den med assing makro,mmen intet sker
Avatar billede excelent Ekspert
04. juni 2007 - 10:50 #8
Indsæt denne som linie 2 (check ark-navn)
Sheets("Sheet1").Activate

koden indsætter 3 nye række under B3 i eks. 10:37:37
række med Hansen flyttes tilsvarende 3 rækker ned
Avatar billede krohn Praktikant
04. juni 2007 - 10:56 #9
Er det sådan her du mener:
Sub test()
rk = Cells(65535, 1).End(xlUp).Row
Sheets("Sheet1").Activate
For t = rk To 2 Step -1
If Cells(t, "B") <> "Smith" And Cells(t, "B").Offset(-1, 0) = "Smith" And Cells(t, "B") <> "" Then
Range("A" & t).Resize(3, 1).EntireRow.Insert
End If
Next
End Sub
Sikkert forkert, for jeg får det stadig ikke til.
Avatar billede excelent Ekspert
04. juni 2007 - 11:01 #10
den skal lige en linie op

hvis dit ark er aktiv når du kører koden behøves linien ikke
Avatar billede excelent Ekspert
04. juni 2007 - 11:07 #11
ellers prøv min eks.fil

http://pmexcelent.dk/Krohn.xls
Avatar billede excelent Ekspert
04. juni 2007 - 11:09 #12
ang. en knap:

højreklik oppe i værktøjslinien
vælg Formularer i menuen
træk en knap ud på arket
assign den til makroen test
Avatar billede krohn Praktikant
04. juni 2007 - 11:36 #13
Super, jeg havde "bare" lagt den forkert..
Lægger du et svar?
Avatar billede excelent Ekspert
04. juni 2007 - 13:19 #14
ok
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