• 14-07-2021, 09:44:16
    #1
    Merhaba, bir proje üzerinde çalışıyorum. C# ile program yazıyorum bu programda bir Excel sayfası çekiyorum ve Excel sayfasına bazı veriler girdirtiyorum. Örnek verecek olursam textbox1'e "a" harfini yazıyorum Excel'de B2 yerine "a" harfi yazılıyor. Benim Tarih adlı sütunum var, Temmuz ayının bütün günleri mevcut. Benim istediğim kullanıcı bir tarih seçsin(Month Calendar ekli programda) ve o tarihteki satıra verileri eklesin. Bunu hangi kod bloğu ile yaparız.


    Kullanıcı 2 Temmuz tarihini seçti örnek veriyorum, ürün1 ile adet1 e textboxtan girdiği veriler yazılsın. 5 Temmuzu seçtiyse 5 Temmuzun yanına yazılsın yapmak istediğim bu. Görüşlerinizi bekliyorum.
  • 14-07-2021, 09:46:29
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Konu sahibinin izni olursa takip+
  • 14-07-2021, 09:46:57
    #3
    Caviz adlı üyeden alıntı: mesajı görüntüle
    Merhaba, bir proje üzerinde çalışıyorum. C# ile program yazıyorum bu programda bir Excel sayfası çekiyorum ve Excel sayfasına bazı veriler girdirtiyorum. Örnek verecek olursam textbox1'e "a" harfini yazıyorum Excel'de B2 yerine "a" harfi yazılıyor. Benim Tarih adlı sütunum var, Temmuz ayının bütün günleri mevcut. Benim istediğim kullanıcı bir tarih seçsin(Month Calendar ekli programda) ve o tarihteki satıra verileri eklesin. Bunu hangi kod bloğu ile yaparız.


    Kullanıcı 2 Temmuz tarihini seçti örnek veriyorum, ürün1 ile adet1 e textboxtan girdiği veriler yazılsın. 5 Temmuzu seçtiyse 5 Temmuzun yanına yazılsın yapmak istediğim bu. Görüşlerinizi bekliyorum.
    excel de 2 temmuz yani tarih hangisindeyse örnek veriyorum şöyle yapacaksın
    1 Temmuz B1
    2 Temmuz B2 de ise program da calender toolundan çektiğin veri yani 2 temmuz ise

    if(cektigin_veri==b2)
    {
    kodumunkodu;
    }

    yapacaksın

    Excel interop sağolsun
  • 14-07-2021, 09:51:09
    #4
    omrfarukarpa adlı üyeden alıntı: mesajı görüntüle
    excel de 2 temmuz yani tarih hangisindeyse örnek veriyorum şöyle yapacaksın
    1 Temmuz B1
    2 Temmuz B2 de ise program da calender toolundan çektiğin veri yani 2 temmuz ise

    if(cektigin_veri==b2)
    {
    kodumunkodu;
    }

    yapacaksın
    böyle yaparsam 30 tane if verisi girmek zorunda kalmaz mıyım? benim istediğim kullanıcı hangi tarihi seçtiyse verileri oraya girsin. Mesela

    if(kullanıcının seçtiği tarih == (B sütununda ki tarih)//burada sütunun içinde tarihi aratıp o sütuna yazmak istiyorum.)
    {
    // burada satır bulunuyor örnek veriyorum seçtiği tarih 5. satırda var
    ekle c5
    ekle d5
    }
  • 14-07-2021, 09:53:43
    #5
    Caviz adlı üyeden alıntı: mesajı görüntüle
    böyle yaparsam 30 tane if verisi girmek zorunda kalmaz mıyım? benim istediğim kullanıcı hangi tarihi seçtiyse verileri oraya girsin. Mesela

    if(kullanıcının seçtiği tarih == (B sütununda ki tarih)//burada sütunun içinde tarihi aratıp o sütuna yazmak istiyorum.)
    {
    // burada satır bulunuyor örnek veriyorum seçtiği tarih 5. satırda var
    ekle c5
    ekle d5
    }
    o zaman tarih kısmında olan b sütununu 30. satıra kadar arattırma yapacaksın bütn sayfayı yaparsan h.o


    eşit olanı bulacaksın for döngüsü kullanarak yapabilirsin.


    benim dediğimi de for döngüsü kullanarak yapabilirsin sana kalmış tamamen açıkçası
  • 14-07-2021, 09:59:50
    #6
    omrfarukarpa adlı üyeden alıntı: mesajı görüntüle
    o zaman tarih kısmında olan b sütununu 30. satıra kadar arattırma yapacaksın bütn sayfayı yaparsan h.o


    eşit olanı bulacaksın for döngüsü kullanarak yapabilirsin.


    benim dediğimi de for döngüsü kullanarak yapabilirsin sana kalmış tamamen açıkçası
    aslında bu aklıma başka bir fikir getirdi teşekkür ederim verdiğin cevaplar için.
  • 14-07-2021, 10:13:24
    #7
    Caviz adlı üyeden alıntı: mesajı görüntüle
    aslında bu aklıma başka bir fikir getirdi teşekkür ederim verdiğin cevaplar için.
  • 14-07-2021, 14:29:29
    #8
    omrfarukarpa adlı üyeden alıntı: mesajı görüntüle
    Hocam burada for ile i döngüsünü döndürüp Excelim.Range["A" + i] Burada A sütunundan kullanıcının girdiği tarihi buldurmaya çalışıyorum 14 temmuz girdiyse i 14 temmuza kadar çalışsın sonra dursun i nin değeri o satırın değeri olsun örnek a14 gibi ama if kısmında hata alıyorum sizce sorun nedir?
    int i;
                for ( i = 0; i < 65; i++)
                {
                    
                    if (monthCalendar1.SelectionRange.End.ToShortDateString().Equals(Excelim.Range["A" + i].ToString()))
                    {
                        break; 
                    }
               
                }
  • 14-07-2021, 15:41:12
    #9
    Sorunu çözdüm basitmiş aslında
    int i = 0;
                for ( i = 0; i < dt.Rows.Count; i++)
                {
                    if (monthCalendar1.SelectionRange.End.ToString() == dt.Rows[i][0].ToString()) { //Month Calenderı tarihe değil direkt string değerine dönüştürdüm, diğer tarafta da sütunu aradım ikisi eşleştiğinde i değerini tutup fordan çıkarttım.
                        i = i + 2; //benim excel tabloma göre ayarladım buraya bakmayabilirsiniz.
                        break;
                }
                }