Satırları ve sütunları kopyalamak, Excel dosyalarıyla çalışırken gerçekleştirilen yaygın bir görevdir. Excel dosyalarındaki satırları veya sütunları programlı olarak kopyalamanız gereken durumlar olabilir. Bu gibi durumlarda, bu makale size C++ kullanarak Excel dosyalarındaki satırları ve sütunları nasıl kopyalayacağınızı öğretecektir.

Excel Dosyalarında Satırları ve Sütunları Kopyalamak için C++ API

Aspose.Cells for C++, Microsoft Excel’in yüklenmesini gerektirmeden Excel dosyaları oluşturmanıza, okumanıza ve değiştirmenize izin veren yerel bir C++ kitaplığıdır. API ayrıca Excel dosyalarındaki satırları ve sütunları kopyalama yeteneği sağlar. API’yi NuGet aracılığıyla yükleyebilir veya doğrudan İndirilenler bölümünden indirebilirsiniz.

PM> Install-Package Aspose.Cells.Cpp

C++ kullanarak bir Excel Dosyasında Tek Satır Kopyalama

Aşağıdaki örneklerde kullanacağımız kaynak Excel dosyasının görüntüsü aşağıdadır.

Kaynak Çalışma Sayfası

Aşağıdakiler, C++ kullanarak bir Excel dosyasındaki tek bir satırı kopyalama adımlarıdır.

Aşağıdaki örnek kod, C++ kullanılarak bir Excel dosyasındaki bir satırın nasıl kopyalanacağını gösterir.

// Kaynak dizin yolu.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");

// Çıkış dizini yolu.
StringPtr outDir = new String("OutputDirectory\\");

// Giriş Excel dosyasını yükleyin
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// İlk çalışma sayfasını al
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// Satırı Kopyala
worksheet->GetICells()->CopyIRow(worksheet->GetICells(), 1, 15);

// Excel dosyasını kaydedin
workbook->Save(outDir->StringAppend(new String("CopyRow_out.xlsx")));
Kopyalanan satırı gösteren resim

Kopyalanan satırı gösteren resim

C++ Kullanarak Bir Excel Dosyasında Birden Çok Satırı Kopyalama

Birden çok satırı kopyalamak için, kopyalanacak toplam satır sayısını gösteren ek bir parametreyi kabul eden CopyIRows yöntemini kullanacağız. Birden çok satırı kopyalamak için aşağıda verilen adımları izleyin.

Aşağıdaki örnek kod, C++ kullanılarak bir Excel dosyasında birden çok satırın nasıl kopyalanacağını gösterir.

// Kaynak dizin yolu.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");

// Çıkış dizini yolu.
StringPtr outDir = new String("OutputDirectory\\");

// Giriş Excel dosyasını yükleyin
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// İlk çalışma sayfasını al
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// Satırları Kopyala
worksheet->GetICells()->CopyIRows(worksheet->GetICells(), 1, 15, 3);

// Excel dosyasını kaydedin
workbook->Save(outDir->StringAppend(new String("CopyRows_out.xlsx")));
Kopyalanan satırları gösteren resim

Kopyalanan satırları gösteren resim

C++ kullanarak bir Excel Dosyasındaki Tek Sütunu Kopyalama

Aşağıdakiler, C++ kullanarak bir Excel dosyasındaki tek bir sütunu kopyalama adımlarıdır.

Aşağıdaki örnek kod, C++ kullanılarak bir Excel dosyasındaki tek bir sütunun nasıl kopyalanacağını gösterir.

// Kaynak dizin yolu.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");

// Çıkış dizini yolu.
StringPtr outDir = new String("OutputDirectory\\");

// Giriş Excel dosyasını yükleyin
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// İlk çalışma sayfasını al
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// Sütunu Kopyala
worksheet->GetICells()->CopyIColumn(worksheet->GetICells(), 0, 6);

// Excel dosyasını kaydedin
workbook->Save(outDir->StringAppend(new String("CopyColumn_out.xlsx")));
Kopyalanan sütunu gösteren resim

Kopyalanan sütunu gösteren resim

C++ Kullanarak Bir Excel Dosyasında Birden Çok Sütunu Kopyalama

Birden çok sütunu kopyalamak için, kopyalanacak toplam sütun sayısını gösteren ek bir parametreyi kabul eden CopyIColumns yöntemini kullanacağız. Birden çok sütunu kopyalamak için aşağıda verilen adımları izleyin.

Aşağıdaki örnek kod, C++ kullanılarak bir Excel dosyasında birden çok sütunun nasıl kopyalanacağını gösterir.

// Kaynak dizin yolu.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");

// Çıkış dizini yolu.
StringPtr outDir = new String("OutputDirectory\\");

// Giriş Excel dosyasını yükleyin
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// İlk çalışma sayfasını al
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// Sütunları Kopyala
worksheet->GetICells()->CopyIColumns(worksheet->GetICells(), 0, 6, 3);

// Excel dosyasını kaydedin
workbook->Save(outDir->StringAppend(new String("CopyColumns_out.xlsx")));
Kopyalanan sütunları gösteren resim

Kopyalanan sütunları gösteren resim

Ücretsiz Lisans Alın

API’yi değerlendirme kısıtlamaları olmadan denemek için [ücretsiz bir geçici lisans] talep edebilirsiniz18.

Çözüm

Bu makalede, C++ kullanarak bir Excel dosyasındaki satırları ve sütunları nasıl kopyalayacağınızı öğrendiniz. Paylaşılan kod örnekleri, bir Excel dosyasındaki tek ve birden çok satır ve sütunun nasıl kopyalanacağını gösterir. Bunu başarmak için Aspose.Cells for C++ API’sini kullandık. Excel dosyalarıyla çalışmak için birçok ek özellik sağlayan sağlam bir API’dir. Resmi belgeleri ziyaret ederek API’yi ayrıntılı olarak inceleyebilirsiniz. Herhangi bir sorunuz olması durumunda lütfen ücretsiz destek forumumuzdan bize ulaşmaktan çekinmeyin.

Ayrıca bakınız