Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.10.2011, 11:30   #1
ruslan_123
 
Регистрация: 19.10.2011
Сообщений: 6
Злость Передача параметров в функцию

Добрый день!
Впервые столкнулся с VBA
Проблема:
есть цикл
for i = 29 to 38
бла
бла
бла
фнкция1[A29:M29]
Next
фнкция1(ByRef ra As Range)


не могу сообразить, как вместо А29 и М29
передать Аі-тое и Мі-тое
Помогите!!!
ruslan_123 вне форума Ответить с цитированием
Старый 20.10.2011, 11:34   #2
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Код:
 Range("A" & i & ":M" & i )
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 20.10.2011, 11:35   #3
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

Код:
set ra=range("A" & i & ":M" & i)
' или
set ra=range("A" & i).resize(,13)
' или
set ra=range(cells(i,1), cells(i,13))
' или
set ra=intersect(rows(i), range("A:M"))
' или
set ra=range(i & ":" & i & " A:M")

фнкция1 ra
exceleved@yandex.ru Яндекс.Деньги: 410011500007619

Последний раз редактировалось Казанский; 20.10.2011 в 11:45.
Казанский вне форума Ответить с цитированием
Старый 20.10.2011, 11:41   #4
ruslan_123
 
Регистрация: 19.10.2011
Сообщений: 6
По умолчанию

ошибка 424
object required
ruslan_123 вне форума Ответить с цитированием
Старый 20.10.2011, 11:48   #5
ruslan_123
 
Регистрация: 19.10.2011
Сообщений: 6
По умолчанию

Вот весь код
Private Sub Worksheet_Activate()
Dim i As Long: Application.ScreenUpdating = False
For i = 12 To 21
If Cells(i, 1) = " " Then
Rows(i).Hidden = True
Else
Rows(i).Hidden = False: Rows(i).AutoFit
End If
Next
For i = 29 To 38
If Cells(i, 1) = " " Then
Rows(i).Hidden = True
Else
Rows(i).Hidden = False: Rows(i).AutoFit
Set ra = Range("A" & i & ":M" & i)
AutoFitMergedCellRowHeight (ra) ??????
End If
Next
End Sub


Sub AutoFitMergedCellRowHeight(ByRef ra As Range)
Dim CurrCell As Range, cell As Range, ma As Range: Dim col As Range, ro As Range
For Each ro In ra.Rows
maxRH = 0
For Each cell In ro.Cells
If cell.MergeCells And cell.Address = cell.MergeArea.Cells(1).Address Then
Debug.Print cell.Address
Set ma = cell.MergeArea: newCW = 0
With ma
cw = .Columns(1).ColumnWidth: .UnMerge
For Each col In .EntireColumn: newCW = newCW + col.ColumnWidth: Next
.Columns(1).ColumnWidth = newCW: .EntireRow.AutoFit
rh = .EntireRow.RowHeight: If rh > maxRH Then maxRH = rh
.Merge: .Columns(1).ColumnWidth = cw
End With
End If
Next cell
If maxRH > 0 Then ro.EntireRow.RowHeight = maxRH
Next ro
End Sub
ruslan_123 вне форума Ответить с цитированием
Старый 20.10.2011, 11:51   #6
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Код:
Dim ra As Range: Set ra = Range("A" & i & ":M" & i)
        AutoFitMergedCellRowHeight ra
или так:
Код:
Rows(i).Hidden = False: Rows(i).AutoFit
            AutoFitMergedCellRowHeight Range("A" & i & ":M" & i)
EducatedFool вне форума Ответить с цитированием
Старый 20.10.2011, 11:53   #7
ruslan_123
 
Регистрация: 19.10.2011
Сообщений: 6
По умолчанию

Большое спасибо всем
ruslan_123 вне форума Ответить с цитированием
Старый 20.10.2011, 12:46   #8
nerv
Форумчанин
 
Аватар для nerv
 
Регистрация: 26.04.2010
Сообщений: 450
По умолчанию

Из этой же оперы http://www.planetaexcel.ru/forum.php...llnum_forum=97
Тишина – самый громкий звук
nerv вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передача параметров _Mixer_ Общие вопросы по Java, Java SE, Kotlin 0 22.09.2011 20:17
Передача параметров форме panda88 PHP 4 26.07.2010 11:18
Передача параметров в функцию через ссылку Vistar Общие вопросы C/C++ 1 07.05.2009 02:27
Передача параметров aesoem Общие вопросы Delphi 8 15.07.2008 21:51
Передача параметров Gudzon Общие вопросы Delphi 12 08.02.2007 08:19