IronXL Kullanarak Hucreleri Nasıl Kopyalarsınız

IronXL ile C#'da Hücreler Nasıl Kopyalanır

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronXL, tek bir Copy yöntemi kullanarak Excel elektronik tablolarında hücreleri, aralıkları, satırları veya sütunları kopyalamayı mümkün kılar. Bu yöntem, herhangi bir konum ya da çalışma sayfası arasında veri çoğaltılırken tüm biçimlendirme ve stil düzenini korur.

"Hücreyi kopyala" özelliği hücre içeriklerini çoğaltır ve diğer hücrelere yapıştırır. Verileri, formülleri, formatlamayı ve diğer nitelikleri çalışma sayfası içerisinde çoğaltır. Whether creating spreadsheets from scratch or loading existing Excel files, the copy functionality is essential for efficient data manipulation.

Hızlı Başlangıç: Tek Satırda Bir Sütun veya Aralık Kopyalayın

Bir yöntem çağrısı kullanarak, tek hücreler, satırlar, sütunlar veya bloklar dahil olmak üzere, bir sayfadan diğerine tüm aralıkları kopyalayın. Copy fonksiyonu, Excel otomasyonunu hızlı ve basit hale getirirken stil ve formatlamayı korur.

  1. NuGet Paket Yöneticisi ile https://www.nuget.org/packages/IronXl.Excel yükleyin

    PM > Install-Package IronXl.Excel
  2. Bu kod parçasını kopyalayıp çalıştırın.

    workSheet.GetColumn(0).Copy(workBook.GetWorkSheet("Sheet1"), "H1");
  3. Canlı ortamınızda test etmek için dağıtın

    Bugün projenizde IronXL kullanmaya başlayın ücretsiz deneme ile

    arrow pointer


Excel'de Tek Bir Hücre Nasıl Kopyalanır?

Seçili hücrenin içeriğini kopyalamak için Copy yöntemini kullanın. İlk parametre olarak çalışma sayfası nesnesini ve ikinci parametre olarak başlangıç pozisyonunu iletin. The Copy method retains all styling including font and size, background patterns and colors, and borders and alignment.

:path=/static-assets/excel/content-code-examples/how-to/copy-cells-copy-single-cell.cs
using IronXL;

WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");

// Copy cell content
workSheet["A1"].Copy(workBook.GetWorkSheet("Sheet1"), "B3");

workBook.SaveAs("copySingleCell.xlsx");
using IronXL;

WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");

// Copy cell content
workSheet["A1"].Copy(workBook.GetWorkSheet("Sheet1"), "B3");

workBook.SaveAs("copySingleCell.xlsx");
using IronXL;

WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");

// Copy cell content
workSheet["A1"].Copy(workBook.GetWorkSheet("Sheet1"), "B3");

workBook.SaveAs("copySingleCell.xlsx");
Imports IronXL

Dim workBook As WorkBook = WorkBook.Load("sample.xlsx")
Dim workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")

' Copy cell content
workSheet("A1").Copy(workBook.GetWorkSheet("Sheet1"), "B3")

workBook.SaveAs("copySingleCell.xlsx")
$vbLabelText   $csharpLabel

Kopyalama Sırasında Hangi Formatlama Korunur?

Copy yöntemi, belirli hücre özelliklerini korur:

  • Cell değerler ve formüller
  • Sayı formatları (para birimi, yüzde, tarih)
  • Yazı tipi stilleri (tip, boyut, kalın, italik, renk)
  • Hücre kenarlıkları ve arka plan renkleri
  • Metin hizalaması (yatay ve dikey)
  • Hücre koruma ayarları

Bu kapsamlı koruma, kopyalanan hücrelerin Microsoft Excel'deki Ctrl+C ve Ctrl+V gibi, orijinal görünümlerini ve işlevselliklerini sürdürmesini sağlar.

Hücre A1 seçili olan ve B3 hücresine kopyalanmış değeri gösteren, tek hücre kopyalamayı gösteren elektronik tablo

Copy Metodu Neden İki Parametre Alır?

Copy yöntemi, hassas kontrol için iki parametre gerektirir:

  1. Çalışma Sayfası parametresi: Hedef çalışma sayfasını belirtir (çalışma kitabında aynı veya farklı)
  2. Adres parametresi: Yapıştırılacak içerik için başlangıç hücresi konumunu tanımlar

Bu tasarım, aynı sayfada veya farklı sayfalar arasında esnek kopyalama yapmayı sağlar, veri kaynaklarından raporlar oluşturma veya tek bir sayfada verileri birleştirme gibi işlemler için idealdir.

Tek Hücre Kopyalama mı Aralık Kopyalama mı Kullanmalıyım?

Aşağıdaki durumlarda tek hücre kopyalamayı seçin:

  • Tekil değer veya formülleri çoğaltma
  • Başlık hücreleri veya etiketleri kopyalama
  • Belirli hesaplanmış sonuçları çoğaltma
  • Özet değerlerle çalışma

Aşağıdaki durumlarda aralık kopyalamayı kullanın:

  • Tüm veri tablolarını taşıma
  • İlişkili birden fazla hücreyi çoğaltma
  • Tüm satır veya sütunları kopyalama
  • Veri ilişkilerini koruma

Birden Çok Hücre veya Aralık Nasıl Kopyalanır?

Like the Clear method, Copy is available in the Range class, allowing execution on any range size. When selecting ranges, IronXL provides flexible copying options:

  • Tek bir hücreyi kopyala (C10):

    workSheet["C10"].Copy(workBook.GetWorkSheet("Sheet1"), "B13");
    workSheet["C10"].Copy(workBook.GetWorkSheet("Sheet1"), "B13");
    workSheet("C10").Copy(workBook.GetWorkSheet("Sheet1"), "B13")
    $vbLabelText   $csharpLabel
  • Bir sütunu kopyala (A):

    workSheet.GetColumn(0).Copy(workBook.GetWorkSheet("Sheet1"), "H1");
    workSheet.GetColumn(0).Copy(workBook.GetWorkSheet("Sheet1"), "H1");
    workSheet.GetColumn(0).Copy(workBook.GetWorkSheet("Sheet1"), "H1")
    $vbLabelText   $csharpLabel
  • Bir satırı kopyala (4):

    workSheet.GetRow(3).Copy(workBook.GetWorkSheet("Sheet1"), "A15");
    workSheet.GetRow(3).Copy(workBook.GetWorkSheet("Sheet1"), "A15");
    workSheet.GetRow(3).Copy(workBook.GetWorkSheet("Sheet1"), "A15")
    $vbLabelText   $csharpLabel
  • İki boyutlu bir aralığı kopyala (D6:F8):

    workSheet["D6:F8"].Copy(workBook.GetWorkSheet("Sheet1"), "H17");
    workSheet["D6:F8"].Copy(workBook.GetWorkSheet("Sheet1"), "H17");
    workSheet("D6:F8").Copy(workBook.GetWorkSheet("Sheet1"), "H17")
    $vbLabelText   $csharpLabel

Lütfen dikkate alinİkinci parametre, veri girişinin başlangıç noktasını işaretleyen bir adres konumunu kabul eder. Kopyalanan veri bu adresten başlayarak sağa ve aşağıya yayılacaktır.

:path=/static-assets/excel/content-code-examples/how-to/copy-cells-copy-cell-range.cs
using IronXL;

WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");

// Copy a single cell(C10)
workSheet["C10"].Copy(workBook.GetWorkSheet("Sheet1"), "B13");

// Copy a column(A)
workSheet.GetColumn(0).Copy(workBook.GetWorkSheet("Sheet1"), "H1");

// Copy a row(4)
workSheet.GetRow(3).Copy(workBook.GetWorkSheet("Sheet1"), "A15");

// Copy a two-dimensional range(D6:F8)
workSheet["D6:F8"].Copy(workBook.GetWorkSheet("Sheet1"), "H17");

workBook.SaveAs("copyCellRange.xlsx");
using IronXL;

WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");

// Copy a single cell(C10)
workSheet["C10"].Copy(workBook.GetWorkSheet("Sheet1"), "B13");

// Copy a column(A)
workSheet.GetColumn(0).Copy(workBook.GetWorkSheet("Sheet1"), "H1");

// Copy a row(4)
workSheet.GetRow(3).Copy(workBook.GetWorkSheet("Sheet1"), "A15");

// Copy a two-dimensional range(D6:F8)
workSheet["D6:F8"].Copy(workBook.GetWorkSheet("Sheet1"), "H17");

workBook.SaveAs("copyCellRange.xlsx");
using IronXL;

WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");

// Copy a single cell(C10)
workSheet["C10"].Copy(workBook.GetWorkSheet("Sheet1"), "B13");

// Copy a column(A)
workSheet.GetColumn(0).Copy(workBook.GetWorkSheet("Sheet1"), "H1");

// Copy a row(4)
workSheet.GetRow(3).Copy(workBook.GetWorkSheet("Sheet1"), "A15");

// Copy a two-dimensional range(D6:F8)
workSheet["D6:F8"].Copy(workBook.GetWorkSheet("Sheet1"), "H17");

workBook.SaveAs("copyCellRange.xlsx");
Imports IronXL

Dim workBook As WorkBook = WorkBook.Load("sample.xlsx")
Dim workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")

' Copy a single cell(C10)
workSheet("C10").Copy(workBook.GetWorkSheet("Sheet1"), "B13")

' Copy a column(A)
workSheet.GetColumn(0).Copy(workBook.GetWorkSheet("Sheet1"), "H1")

' Copy a row(4)
workSheet.GetRow(3).Copy(workBook.GetWorkSheet("Sheet1"), "A15")

' Copy a two-dimensional range(D6:F8)
workSheet("D6:F8").Copy(workBook.GetWorkSheet("Sheet1"), "H17")

workBook.SaveAs("copyCellRange.xlsx")
$vbLabelText   $csharpLabel

Hedef Alan Çok Küçük Olduğunda Ne Olur?

IronXL boyut farklılıklarını otomatik olarak halleder:

  • Hedef parametre yalnızca sol üst başlangıç hücresini belirtir
  • Hedef boyutu ne olursa olsun, tüm kaynak aralığı kopyalanır
  • Hedef alandaki mevcut veri üzerine yazılır
  • Kopyalama işlemi tüm kaynak veriyi içerecek şekilde genişletilir

Örneğin, 3x3 bir aralığı hücre B1'ye kopyalamak, hücreleri B1:D3 doldurur ve var olan içeriği üzerine yazar.

Satır ve Sütun Referansları Nasıl Çalışır?

IronXL, satırlar ve sütunlar için sıfırdan başlayan indeksleme kullanır ve GetRow() ve GetColumn() yöntemleri mevcuttur:

  • GetColumn(0) sütun A'ya karşılık gelir
  • GetColumn(1) sütun B'ye karşılık gelir
  • GetRow(0) satır 1'e karşılık gelir
  • GetRow(3) satır 4'e karşılık gelir

Bu indeksleme, standart C# dizi konvansiyonlarıyla uyumludur.

Neden GetColumn() ve GetRow() Metotlarını Kullanmalıyım?

GetColumn() ve GetRow() yöntemleri şunları sunar:

  • Performans: Tüm satır veya sütunlar için daha verimlidir
  • Açıklık: Kod amacını daha net hale getirir
  • Esneklik: Tüm aralık işlemlerini destekleyen bir Range nesnesi döndürür
  • Kolaylık: Tam seçimler için son hücreleri hesaplamaya gerek yoktur

Bu metotlar, bir sütun kopyalamayı veya sıraları kopyalayarak şablon oluştururken raporlar hazirlamada mükemmeldir.

Kaynak araliklardan A1:F10 hücrelerine ok ile gösterilen ve kopyalanmiş veri ile vurgulanan Excel kopyalama işlemleri

Farklı Çalışma Sayfaları Arasında Hücreler Nasıl Kopyalanır?

İlk parametre bir çalışma sayfası nesnesi kabul eder ve farklı çalışma sayfaları arasında kopyalama ve yapıştırma yapmayı sağlar. İlk parametre olarak farklı bir çalışma sayfası nesnesi iletin. This functionality proves essential when managing multiple worksheets or creating summary sheets from detailed data.

Lütfen dikkate alinAşağıdaki örnekte, Kopyala yönteminin ilk parametresi "Sheet2" çalışma sayfasıdır: workBook.GetWorksheet("Sheet2")

:path=/static-assets/excel/content-code-examples/how-to/copy-cells-copy-to-other-worksheet.cs
using IronXL;

WorkBook workBook = WorkBook.Load("multisheet.xlsx");
WorkSheet sheet1 = workBook.GetWorkSheet("Sheet1");
WorkSheet sheet2 = workBook.GetWorkSheet("Sheet2");

// Copy entire data range from Sheet1 to Sheet2
sheet1["A1:D10"].Copy(sheet2, "A1");

// Copy with formulas intact
sheet1["E1:E10"].Copy(sheet2, "F1");

// Copy formatting from template sheet
WorkSheet templateSheet = workBook.GetWorkSheet("Template");
templateSheet["A1:Z1"].Copy(sheet2, "A15");

workBook.SaveAs("crossSheetCopy.xlsx");
using IronXL;

WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");

// Copy cell content
workSheet["A1"].Copy(workBook.GetWorkSheet("Sheet2"), "B3");

workBook.SaveAs("copyAcrossWorksheet.xlsx");
using IronXL;

WorkBook workBook = WorkBook.Load("multisheet.xlsx");
WorkSheet sheet1 = workBook.GetWorkSheet("Sheet1");
WorkSheet sheet2 = workBook.GetWorkSheet("Sheet2");

// Copy entire data range from Sheet1 to Sheet2
sheet1["A1:D10"].Copy(sheet2, "A1");

// Copy with formulas intact
sheet1["E1:E10"].Copy(sheet2, "F1");

// Copy formatting from template sheet
WorkSheet templateSheet = workBook.GetWorkSheet("Template");
templateSheet["A1:Z1"].Copy(sheet2, "A15");

workBook.SaveAs("crossSheetCopy.xlsx");
Imports IronXL

Dim workBook As WorkBook = WorkBook.Load("sample.xlsx")
Dim workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")

' Copy cell content
workSheet("A1").Copy(workBook.GetWorkSheet("Sheet2"), "B3")

workBook.SaveAs("copyAcrossWorksheet.xlsx")

Dim workBook2 As WorkBook = WorkBook.Load("multisheet.xlsx")
Dim sheet1 As WorkSheet = workBook2.GetWorkSheet("Sheet1")
Dim sheet2 As WorkSheet = workBook2.GetWorkSheet("Sheet2")

' Copy entire data range from Sheet1 to Sheet2
sheet1("A1:D10").Copy(sheet2, "A1")

' Copy with formulas intact
sheet1("E1:E10").Copy(sheet2, "F1")

' Copy formatting from template sheet
Dim templateSheet As WorkSheet = workBook2.GetWorkSheet("Template")
templateSheet("A1:Z1").Copy(sheet2, "A15")

workBook2.SaveAs("crossSheetCopy.xlsx")
$vbLabelText   $csharpLabel

Yaygın Çalışma Sayfaları Arası Kopyalama Senaryoları Nelerdir?

Çalışma sayfaları arasında kopyalama sıklıkla bu senaryolara hizmet eder:

  1. Özet Sayfalar Oluşturma: Ayrıntılı sayfalardan gösterge panolarına temel ölçümleri kopyalayın
  2. Şablon Çoğaltma: Biçimlendirilmiş şablonları yeni çalışma sayfalarına kopyalayın
  3. Veri Birleştirme: Bölüm tabanlı sayfalardan veriyi ana sayfalara toplayın
  4. Rapor Oluşturma: Ayrıştırılmış sonuçları ayrı raporlama çalışma sayfalarına kopyalayın
  5. Yedekleme İşlemleri: Kritik verileri yedekleme sayfalarına çoğaltın

When working with formulas that reference other cells, IronXL automatically adjusts relative references based on the new location while maintaining absolute references.

Ne Zaman Yeni Bir Çalışma Sayfasına mı, Mevcut Olana mı Kopyalamalıyım?

Aşağıdaki durumlarda yeni bir çalışma sayfasına kopyalayın:

  • Dönemsel raporlar oluşturma (günlük, haftalık, aylık)
  • İşlenmiş veriyi ham veriden izole etme
  • Kaynak veriden analiz çalışma sayfaları oluşturma
  • Kullanıcıya özel veri görünümleri oluşturma

Aşağıdaki durumlarda mevcut bir çalışma sayfasına kopyalayın:

  • Süregelen günlük girişlerine veri ekleme
  • Gösterge panosu bölümlerini güncelleme
  • Birden fazla veri kaynağını konsolide etme
  • Tarihi kayıtları muhafaza etmek

For complex scenarios involving multiple sheets, consider using IronXL's ability to work with DataSets and DataTables for sophisticated data manipulation.

Çalışma Sayfası Adlandırma Çatışmaları Nasıl Ele Alınır?

Çalışma sayfaları arasında kopyalama yaparken uygun çalışma sayfası yönetimini sağlayın:

// Check if worksheet exists before copying
if (workBook.GetWorkSheet("TargetSheet") == null)
{
    workBook.CreateWorkSheet("TargetSheet");
}

// Safe copy operation
WorkSheet targetSheet = workBook.GetWorkSheet("TargetSheet");
sourceSheet["A1:Z100"].Copy(targetSheet, "A1");
// Check if worksheet exists before copying
if (workBook.GetWorkSheet("TargetSheet") == null)
{
    workBook.CreateWorkSheet("TargetSheet");
}

// Safe copy operation
WorkSheet targetSheet = workBook.GetWorkSheet("TargetSheet");
sourceSheet["A1:Z100"].Copy(targetSheet, "A1");
' Check if worksheet exists before copying
If workBook.GetWorkSheet("TargetSheet") Is Nothing Then
    workBook.CreateWorkSheet("TargetSheet")
End If

' Safe copy operation
Dim targetSheet As WorkSheet = workBook.GetWorkSheet("TargetSheet")
sourceSheet("A1:Z100").Copy(targetSheet, "A1")
$vbLabelText   $csharpLabel

Bu yaklaşım, çalışma zamanı hatalarını önler ve kopyalama işlemlerinin başarılı olmasını sağlar, özellikle de üretim ortamlarında Excel süreçlerini otomatikleştirirken önemlidir.

Sıkça Sorulan Sorular

C# kullanarak Excel'de tek bir hücreyi nasıl kopyalarım?

IronXL ile, Copy yöntemi kullanarak tek bir hücreyi kopyalayabilirsiniz. Kopyalamak istediğiniz hücreyi (ör. workSheet["A1"]) seçin ve Copy yöntemini çağırarak hedef çalışma sayfasını ve hedef hücre adresini parametre olarak geçirin. IronXL, kopyalama işlemi sırasında yazı tipleri, renkler, kenarlıklar ve formüller dahil tüm biçimlendirmeyi korur.

Hücreleri kopyalarken hangi biçimlendirme korunur?

IronXL'nin Copy yöntemi tüm hücre özelliklerini korur, bunlar arasında hücre değerleri ve formüller, sayısal biçimler (para birimi, yüzde, tarihler), font stili (tip, boyut, kalın, italik, renk), hücre kenarlıkları ve arka plan renkleri, metin hizalaması (yatay ve dikey) ve hücre koruma ayarları yer alır. Bu, kopyalanan hücrelerin orijinal görünümünü ve işlevselliği korumasını sağlar.

Tüm sütunları veya aralıkları bir kerede kopyalayabilir miyim?

Evet, IronXL tüm sütunları, satırları veya aralıkları tek bir operasyonda kopyalamanıza izin verir. Bir sütunun tamamını kopyalamak için GetColumn(0).Copy() gibi yöntemleri kullanabilir veya bir aralık seçerek birden çok hücreyi bir kerede kopyalayabilirsiniz. Copy yöntemi, tek hücrelerden tüm çalışma sayfalarına kadar her tür seçimle çalışır.

Farklı çalışma sayfaları arasında hücreleri nasıl kopyalarım?

IronXL, çalışma sayfaları arasında hücreleri kopyalamayı kolaylaştırır. Copy yöntemini kullanırken, hedef çalışma sayfasını ilk parametre olarak (ör. workBook.GetWorkSheet("Sheet2")) ve hedef hücre adresini ikinci parametre olarak belirtin. Bu, aynı çalışma kitabındaki farklı sayfalar arasında veri kopyalamanızı sağlar.

Excel'de hücreleri kopyalamak için gerekli en az adımlar nelerdir?

IronXL ile hücreleri kopyalamak sadece 5 adım içerir: 1) IronXL C# kütüphanesini indirin, 2) Mevcut Excel elektronik tablonuzu yükleyin, 3) Kopyalamak istediğiniz aralık, satır veya sütunu seçin, 4) Seçili aralık üzerinde Copy yöntemini çağırın ve 5) Copy yöntemine bir hedef çalışma sayfası ve pozisyon geçirin. Tüm işlemi tek satırlık bir kodda yapabilirsiniz.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında lisans derecesine sahiptir (Carleton Üniversitesi) ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirme üzerine uzmanlaşmıştır. Kullanıcı dostu ve estetik açıdan hoş arayüzler tasarlamaya tutkuyla bağlı olan Curtis, modern çerç...

Daha Fazlasını Oku
Başlamaya Hazır mısınız?
Nuget İndirmeler 1,974,422 | Sürüm: 2026.4 just released
Still Scrolling Icon

Hala Kaydiriyor musunuz?

Hızlı bir kanit mi istiyorsunuz? PM > Install-Package IronXl.Excel
bir örnek çalıştırın verilerinizin bir elektronik tabloya dönüştüğünü izleyin.