Excelde bir problem.

Katılım
29 Temmuz 2005
Mesajlar
5
Kendi kendime macroda ufak bir program yazmaya uğraşıyorum...
Programın yaptığı şey, ilk sayfadaki tabloda daha önceden hazırlanmış bir tabloda for döngüsüyle DSum kullanmak.


Edit:

Arkadaşlar macronun içeriğini yazmak yerine ekteki dosyayı yollamakta fayda gördüm.

Birinci Problem: (çözdüm)
İlk sayfadaki tabloda databaseimiz var. Ama kablo uzunlukları (cable lenght) kısmı ilk açıldığında boş oluyor. İkinci sayfada kablo uzunluklarını tanıttım(hepsini değil, bir kısmını). "lenght" macrosunu çalıştırdığımızda ikinci tablonun yardımıyla ilk tabloyu dolduruyoruz. (macro istediğim gibi çalışıyor.)

İkinci Problem: (çözmeye çalıştığımız)
İlk macro çalıştırıldıktan sonra, "totallenght" macrosu ile her kablo tipinden ne kadar kabloya ihtiyaç var bulunacak.
Excel dilinde anlatırsak, 1. sayfada Dsum komutu kullanılarak, 3. sayfadaki değerler doldurulacak.
(lütfen 3. sayfanın, B2 hücresindeki fonksiyona bakınız)

İlk problemin çözümündeki(lenght macrosuna bakınız) gibi ikinci problemin çözümü de başka sayfalara uygulanabilir olmalı.
(ELCADexport isimli tablonun formatı hep aynı kalıyor, yani sütünların isimleri ve yerleri değişmiyor. ama satırlar değişebilir.)


Eğer bu problemimi çözerseniz, sonsuza kadar müteşekkir olacağım...
Hatta çözene dondurma ısmarlayacağım.
:)
 
Katılım
29 Temmuz 2005
Mesajlar
5
siz en iyisi yanıt falan vermeyin...
ben de farkettim yaptığım hataları
bir programlama faciası resmen.
:)

Edit; mesaj içerisindeki bazı kelimeler tarafımdan düzeltilmiştir. TRABLUS
 

zafer

Super Moderator
Yönetici
Katılım
8 Mart 2005
Mesajlar
3,288
Excel Vers. ve Dili
OFFICE 2003 TÜRKÇE
OFFICE 2010 TÜRKÇE
Merhaba

dsum'u makroda daha değişik kullanmanız gerekir.

örnek:
myVar = Application.WorksheetFunction _
.Match(9, Worksheets(1).Range("A1:A10"), 0)
MsgBox myVar

modülde Dsum yazıp F1 tuşuna basarsanız açıklamalı yardım alabilirsiniz

ayrıca

Ne yapmak istediğinizi daha açıklayıcı olarak anlatırsanız. başka yollardanda çözüm üretilebilir.
Saygılarımla
 
Katılım
29 Temmuz 2005
Mesajlar
5
zafer' Alıntı:
Merhaba

dsum'u makroda daha değişik kullanmanız gerekir.

örnek:
myVar = Application.WorksheetFunction _
.Match(9, Worksheets(1).Range("A1:A10"), 0)
MsgBox myVar

modülde Dsum yazıp F1 tuşuna basarsanız açıklamalı yardım alabilirsiniz

ayrıca

Ne yapmak istediğinizi daha açıklayıcı olarak anlatırsanız. başka yollardanda çözüm üretilebilir.
Saygılarımla
Zafer arkadaşım, sorunu çok daha açıklayıcı bir biçimde düzenledim.
Yardımcı olursanız çok mutlu olacağım...
 
Üst