ÜST DÜZEY EXCEL SORUNU ACİLL

Sezai39

Öğrenci
Katılım
21 Şubat 2016
Mesajlar
2
Reaksiyon puanı
0
Puanları
1
Yaş
29
Arkadaşlar merhaba bügün biz bir kod denedik fakat üst düzey bir yazılım. Buradaki amaç otomatik olarak "mn" leri seçip "c11" toplam sonuç "12" olması gerek böyle birşey mümkünmü ?

Yardımlarınızı bekliyorum. Doguş arkadaşımda aynı konuda paylasımda bulunmuştur arkadaşlar kusura bakmayın programda hata var excel dosyasını yüklemiyor bende kopyalaya bıldım.

AD ADET
MN 8
VV 5
XX 7
HY 6
MN 2
HH 1
MN 1
MN 2
TOPLAM 12
 
Son düzenleyen moderatör:

algea

Doçent
Katılım
15 Temmuz 2011
Mesajlar
505
Reaksiyon puanı
22
Puanları
18
Makro ile şu şekilde yapabilirsin excel hazır fonksiyonlar ile yapılabileceğini sanmıyorum. Umarım faydalı olabilmişimdir...

Kod:
Function CalculateTotal(ParamArray rs() As Variant) As Integer
Dim TheUnion, rng As Range
Dim i, r As Integer
If UBound(rs()) > -1 Then
    Set TheUnion = rs(0)
    For i = 1 To UBound(rs())
        Set TheUnion = Union(TheUnion, (rs(i)))
    Next
End If

Dim col, row As Integer

For Each rng In TheUnion
        col = rng.Cells.Column
        row = rng.Cells.row
        If UCase(Cells(row, col - 1).Value) = "MN" Then
            r = r + rng.Value
        End If
Next
CalculateTotal = r
End Function

MGCIC2J.png
 

algea

Doçent
Katılım
15 Temmuz 2011
Mesajlar
505
Reaksiyon puanı
22
Puanları
18
Böyle bir fonksiyonu olduğunu yeni öğrendim. Basit yoldu da varmış demek.
 

Mustafa Kaya

Öğrenci
Katılım
24 Şubat 2016
Mesajlar
5
Reaksiyon puanı
0
Puanları
1
Yaş
34
Makro belki karışık gelebilir şöyle bir çözümü de var. Burada E sütünuna her kodun başına =(eşittir) koyarak D sütünunda girmek gerekiyor. Sanırım işini görecektir.
excelProblem.JPG
 
Son düzenleme:

Mustafa Kaya

Öğrenci
Katılım
24 Şubat 2016
Mesajlar
5
Reaksiyon puanı
0
Puanları
1
Yaş
34
Sorry arkadaşlar, kafa karışıklığı olmasın kopyala yapıştırdan dolayı, harfleri yeri değişmiş.
excelProblem.JPG

Not: Bir önceki mesajı 2. kez düzenlememe izin vermediğinden 2. mesajı atıyorum.
 

Sezai39

Öğrenci
Katılım
21 Şubat 2016
Mesajlar
2
Reaksiyon puanı
0
Puanları
1
Yaş
29
HEPİNİZ İÇİN TEŞEKKÜR EDERİM
 

kadirildeniz

Öğrenci
Katılım
23 Haziran 2016
Mesajlar
15
Reaksiyon puanı
1
Puanları
3
Yaş
26
Cevaplamışlar ama =ETOPLA() komutunu kolayca kullanabilirsin .
 
Üst