ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Shorting code (https://www.excelbanter.com/excel-programming/411987-shorting-code.html)

Brad

Shorting code
 
Is there a way to short this code?

Sub AddingClients()
Dim Startcell As Range
Dim shtOffset As Integer

Set Startcell = shtClient.Range("b2")
shtOffset = shtClient.Range("a1").Value
Startcell.Offset(shtOffset, 0) = shtInput.Range("c16")
Startcell.Offset(shtOffset, 1) = shtInput.Range("c4")
Startcell.Offset(shtOffset, 2) = shtInput.Range("c15")
Startcell.Offset(shtOffset, 3) = shtInput.Range("c17")
Startcell.Offset(shtOffset, 4) = shtInput.Range("c18")
Startcell.Offset(shtOffset, 5) = shtInput.Range("c5")
Startcell.Offset(shtOffset, 6) = shtInput.Range("c9")
Startcell.Offset(shtOffset, 7) = shtInput.Range("c10")
Startcell.Offset(shtOffset, 8) = shtInput.Range("c11")
Startcell.Offset(shtOffset, 9) = shtInput.Range("c20")
Startcell.Offset(shtOffset, 10) = shtInput.Range("c21")
Startcell.Offset(shtOffset, 11) = shtInput.Range("c23")
Startcell.Offset(shtOffset, 12) = shtInput.Range("c25")
Startcell.Offset(shtOffset, 13) = shtInput.Range("c26")
Startcell.Offset(shtOffset, 14) = shtInput.Range("c29")
Startcell.Offset(shtOffset, 15) = shtInput.Range("c30")
Startcell.Offset(shtOffset, 16) = shtInput.Range("c31")
Startcell.Offset(shtOffset, 17) = shtInput.Range("c32")
End Sub


--
Wag more, bark less

Rick Rothstein \(MVP - VB\)[_2050_]

Shorting code
 
Something like this (untested) should work...

Sub AddingClients()
Dim X As Long
Dim Startcell As Range
Dim shtOffset As Integer

Set Startcell = shtClient.Range("b2")
shtOffset = shtClient.Range("a1").Value
For X = 0 To 17
Startcell.Offset(shtOffset, X) = shtinput.Range(Split( _
"c16,c4,c15,c17,c18,c5,c9,c10,c11,c20,c21,c23, " & _
"c25,c26,c29,c30,c31,c32", ",")(X)).Value
Next
End Sub

Rick


"Brad" wrote in message
...
Is there a way to short this code?

Sub AddingClients()
Dim Startcell As Range
Dim shtOffset As Integer

Set Startcell = shtClient.Range("b2")
shtOffset = shtClient.Range("a1").Value
Startcell.Offset(shtOffset, 0) = shtInput.Range("c16")
Startcell.Offset(shtOffset, 1) = shtInput.Range("c4")
Startcell.Offset(shtOffset, 2) = shtInput.Range("c15")
Startcell.Offset(shtOffset, 3) = shtInput.Range("c17")
Startcell.Offset(shtOffset, 4) = shtInput.Range("c18")
Startcell.Offset(shtOffset, 5) = shtInput.Range("c5")
Startcell.Offset(shtOffset, 6) = shtInput.Range("c9")
Startcell.Offset(shtOffset, 7) = shtInput.Range("c10")
Startcell.Offset(shtOffset, 8) = shtInput.Range("c11")
Startcell.Offset(shtOffset, 9) = shtInput.Range("c20")
Startcell.Offset(shtOffset, 10) = shtInput.Range("c21")
Startcell.Offset(shtOffset, 11) = shtInput.Range("c23")
Startcell.Offset(shtOffset, 12) = shtInput.Range("c25")
Startcell.Offset(shtOffset, 13) = shtInput.Range("c26")
Startcell.Offset(shtOffset, 14) = shtInput.Range("c29")
Startcell.Offset(shtOffset, 15) = shtInput.Range("c30")
Startcell.Offset(shtOffset, 16) = shtInput.Range("c31")
Startcell.Offset(shtOffset, 17) = shtInput.Range("c32")
End Sub


--
Wag more, bark less



Don Guillett

Shorting code
 
This should work for a list in col E
16
4
15
17
18
5
9

Sub shortenit()
For i = 1 To Cells(Rows.Count, "e").End(xlUp).Row
Cells(i, "a").Value = Range("c" & Cells(i, "e"))
Next i
End Sub

--
Don Guillett
Microsoft MVP Excel
SalesAid Software

"Brad" wrote in message
...
Is there a way to short this code?

Sub AddingClients()
Dim Startcell As Range
Dim shtOffset As Integer

Set Startcell = shtClient.Range("b2")
shtOffset = shtClient.Range("a1").Value
Startcell.Offset(shtOffset, 0) = shtInput.Range("c16")
Startcell.Offset(shtOffset, 1) = shtInput.Range("c4")
Startcell.Offset(shtOffset, 2) = shtInput.Range("c15")
Startcell.Offset(shtOffset, 3) = shtInput.Range("c17")
Startcell.Offset(shtOffset, 4) = shtInput.Range("c18")
Startcell.Offset(shtOffset, 5) = shtInput.Range("c5")
Startcell.Offset(shtOffset, 6) = shtInput.Range("c9")
Startcell.Offset(shtOffset, 7) = shtInput.Range("c10")
Startcell.Offset(shtOffset, 8) = shtInput.Range("c11")
Startcell.Offset(shtOffset, 9) = shtInput.Range("c20")
Startcell.Offset(shtOffset, 10) = shtInput.Range("c21")
Startcell.Offset(shtOffset, 11) = shtInput.Range("c23")
Startcell.Offset(shtOffset, 12) = shtInput.Range("c25")
Startcell.Offset(shtOffset, 13) = shtInput.Range("c26")
Startcell.Offset(shtOffset, 14) = shtInput.Range("c29")
Startcell.Offset(shtOffset, 15) = shtInput.Range("c30")
Startcell.Offset(shtOffset, 16) = shtInput.Range("c31")
Startcell.Offset(shtOffset, 17) = shtInput.Range("c32")
End Sub


--
Wag more, bark less



Brad

Shorting code
 
Thank you!
--
Wag more, bark less


"Brad" wrote:

Is there a way to short this code?

Sub AddingClients()
Dim Startcell As Range
Dim shtOffset As Integer

Set Startcell = shtClient.Range("b2")
shtOffset = shtClient.Range("a1").Value
Startcell.Offset(shtOffset, 0) = shtInput.Range("c16")
Startcell.Offset(shtOffset, 1) = shtInput.Range("c4")
Startcell.Offset(shtOffset, 2) = shtInput.Range("c15")
Startcell.Offset(shtOffset, 3) = shtInput.Range("c17")
Startcell.Offset(shtOffset, 4) = shtInput.Range("c18")
Startcell.Offset(shtOffset, 5) = shtInput.Range("c5")
Startcell.Offset(shtOffset, 6) = shtInput.Range("c9")
Startcell.Offset(shtOffset, 7) = shtInput.Range("c10")
Startcell.Offset(shtOffset, 8) = shtInput.Range("c11")
Startcell.Offset(shtOffset, 9) = shtInput.Range("c20")
Startcell.Offset(shtOffset, 10) = shtInput.Range("c21")
Startcell.Offset(shtOffset, 11) = shtInput.Range("c23")
Startcell.Offset(shtOffset, 12) = shtInput.Range("c25")
Startcell.Offset(shtOffset, 13) = shtInput.Range("c26")
Startcell.Offset(shtOffset, 14) = shtInput.Range("c29")
Startcell.Offset(shtOffset, 15) = shtInput.Range("c30")
Startcell.Offset(shtOffset, 16) = shtInput.Range("c31")
Startcell.Offset(shtOffset, 17) = shtInput.Range("c32")
End Sub


--
Wag more, bark less


Brad

Shorting code
 
Thank you!
--
Wag more, bark less


"Don Guillett" wrote:

This should work for a list in col E
16
4
15
17
18
5
9

Sub shortenit()
For i = 1 To Cells(Rows.Count, "e").End(xlUp).Row
Cells(i, "a").Value = Range("c" & Cells(i, "e"))
Next i
End Sub

--
Don Guillett
Microsoft MVP Excel
SalesAid Software

"Brad" wrote in message
...
Is there a way to short this code?

Sub AddingClients()
Dim Startcell As Range
Dim shtOffset As Integer

Set Startcell = shtClient.Range("b2")
shtOffset = shtClient.Range("a1").Value
Startcell.Offset(shtOffset, 0) = shtInput.Range("c16")
Startcell.Offset(shtOffset, 1) = shtInput.Range("c4")
Startcell.Offset(shtOffset, 2) = shtInput.Range("c15")
Startcell.Offset(shtOffset, 3) = shtInput.Range("c17")
Startcell.Offset(shtOffset, 4) = shtInput.Range("c18")
Startcell.Offset(shtOffset, 5) = shtInput.Range("c5")
Startcell.Offset(shtOffset, 6) = shtInput.Range("c9")
Startcell.Offset(shtOffset, 7) = shtInput.Range("c10")
Startcell.Offset(shtOffset, 8) = shtInput.Range("c11")
Startcell.Offset(shtOffset, 9) = shtInput.Range("c20")
Startcell.Offset(shtOffset, 10) = shtInput.Range("c21")
Startcell.Offset(shtOffset, 11) = shtInput.Range("c23")
Startcell.Offset(shtOffset, 12) = shtInput.Range("c25")
Startcell.Offset(shtOffset, 13) = shtInput.Range("c26")
Startcell.Offset(shtOffset, 14) = shtInput.Range("c29")
Startcell.Offset(shtOffset, 15) = shtInput.Range("c30")
Startcell.Offset(shtOffset, 16) = shtInput.Range("c31")
Startcell.Offset(shtOffset, 17) = shtInput.Range("c32")
End Sub


--
Wag more, bark less





All times are GMT +1. The time now is 05:26 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com