2013-10-25 3 views

ответ

4

Поскольку значение nb = 0 и строки в Excel начинаются с 1

Попробуйте

Dim nb As Long 
Dim Rng As Range 

nb = 2 
Set Rng = Range("K1:K" & nb) 
+0

Проблема не была нулевым значением. Ваш код работал, но следующее: Set Rng = Range («K» & nb1 & »: K» & nb2), предполагая, что nb1 = 10 и nb2 = 15 –

+0

Ничего плохого в 'Set Rng = Range (« K »& nb1 & ": K" & nb2) 'Какую ошибку вы получаете? –

+0

Ошибка времени выполнения 13 Несоответствие типа –

0

я не уверен, что значение для нба.

Попробуйте использовать обозначения Cell (RowIndex, ColumnIndex), где RowIndexand ColumnIndex являются целыми числами.

Sub RangeExemple() 

Dim colIndex, colIndex2, rowIndex, rowIndex2 As Integer 

colIndex = 7 
colIndex2 = colIndex 
rowIndex = 1 
rowIndex2 = 5 

Range(Cells(rowIndex, colIndex), Cells(rowIndex2, colIndex2)).Interior.ColorIndex = 37 

End Sub

Что вы хотите сделать на самом деле?

+0

вот в чем дело;) он, вероятно, не знал, что вам нужно определить значение для nb – CustomX

+0

Нет :-) I хочу ... У меня было определенное значение, я просто не показывал этот бит кода. Не определять значение было бы немного наивным ... –

+0

Ну, подход к ячейкам очень полезен, когда зацикливайтесь, подумайте об этом! – sabotero

Смежные вопросы