Ячейки VBA

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Acclaim
Начинающий
Начинающий
 
Сообщения: 13
Зарегистрирован: 21.01.2005 (Пт) 8:36
Откуда: Красноярск

Ячейки VBA

Сообщение Acclaim » 21.01.2005 (Пт) 8:44

Люди подскажите как реализовать:
If .Cells(i, 1).Value = "ФИО" Then
wr.Cells(counter, 1).Value = .Cells(i, 2).Value + .Cells(i, 3)Value
End If
непостоянные ячейки нужно суммировать из другого листа.
Не важно кто прав, главное - кто ЛЕВ!

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 21.01.2005 (Пт) 8:48

Непонятно.
Если я тебя правильно понял (что очень сомнительно), то тебе достаточно функции СУММЕСЛИ().
Lasciate ogni speranza, voi ch'entrate.

Acclaim
Начинающий
Начинающий
 
Сообщения: 13
Зарегистрирован: 21.01.2005 (Пт) 8:36
Откуда: Красноярск

Ячейки VBA

Сообщение Acclaim » 21.01.2005 (Пт) 12:34

есть лист1 с данными из них идет выборка по критериям в лист2 нужно совершить операции с ячейками ЛИСТА1 (суммировать их при соблюдении условия)

Sub FillReport()
Dim i As Integer
Dim currentAgr As String: currentAgr = ""
Dim counter As Long: counter = 3
With wd
For i = 2 To .UsedRange.Rows.Count + 1
If .Cells(i, 1).Value <> currentAgr Then
wr.Rows(wr.Range("END").Row & ":" & wr.Range("END").Row).Insert Shift:=xlDown
counter = counter + 1
wr.Rows(counter & ":" & counter).Hidden = False
currentAgr = .Cells(i, 1).Value
End If

If .Cells(i, 1).Value = "ФИО" Then
wr.Cells(counter, 1).Value = .Cells(i, 2).Value
wr.Cells(counter, 2).Value = .Cells(i, 8).Value
wr.Cells(counter, 3).Value = .Cells(i, 6).Value
ElseIf .Cells(i, 9).Text = "паспорт" Then
wr.Cells(counter, 4).Value = .Cells(i, 6).Value

End If

Next

For i = 2 To .UsedRange.Rows.Count + 1
If .Cells(i, 1).Value <> currentAgr Then
wr.Rows(wr.Range("END").Row & ":" & wr.Range("END").Row).Insert Shift:=xlDown
counter = counter + 1
wr.Rows(counter & ":" & counter).Hidden = False
currentAgr = .Cells(i, 1).Value
End If

If .Cells(i, 1).Value = "кличка" Then
wr.Cells(counter, 1).Value = .Cells(i, 2).Value
wr.Cells(counter, 2).Value = .Cells(i, 8).Value
wr.Cells(counter, 3).Value = .Cells(i, 6).Value
ElseIf .Cells(i, 9).Text = "ксива" Then
wr.Cells(counter, 4).Value = .Cells(i, 6) ' здесь надо суммировать с ".Cells(i, 7)
End If

Next

End With
wr.Columns("A:H").EntireColumn.AutoFit
End Sub
Не важно кто прав, главное - кто ЛЕВ!

Acclaim
Начинающий
Начинающий
 
Сообщения: 13
Зарегистрирован: 21.01.2005 (Пт) 8:36
Откуда: Красноярск

Ячейки VBA

Сообщение Acclaim » 24.01.2005 (Пн) 13:00

Может кто детально готов помочь?
Не важно кто прав, главное - кто ЛЕВ!


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4

    TopList  
cron