IronXL Kullanarak Hücreleri Kopyalama

IronXL ile C# Dilinde Hücre Kopyalama

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

IronXL, herhangi bir konum veya çalışma sayfası arasında verileri kopyalarken tüm biçimlendirme ve stil özelliklerini koruyan tek bir Copy yöntemi kullanarak Excel elektronik tablolarındaki hücreleri, aralıkları, satırları veya sütunları kopyalamayı sağlar.

"Hücreyi Kopyala" özelliği hücre içeriğini kopyalar ve başka hücrelere yapıştırır. Çalışma sayfası içindeki veriler, formüller, biçimlendirme ve diğer nitelikler çoğaltılı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ırlık Bir Kolon veya Aralık Kopyalayın

Bir yöntem çağrısı kullanarak bir sayfadan diğerine tek hücre, satır, sütun veya bloklar halinde tüm aralıkları kopyalayın. Copy işlevi, stil ve biçimlendirmeyi korurken Excel otomasyonunu hızlı ve basit hale getirir.

  1. IronXL aşağıdaki NuGet Paket Yöneticisi ile yükleyin

    PM > Install-Package IronXL.Excel
  2. Bu kod parçacığını kopyalayın ve çalıştırın.

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

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

    arrow pointer


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

Seçili bir hücrenin içeriğini kopyalamak için Copy yöntemini kullanın. Çalışma sayfası nesnesini ilk parametre olarak ve başlangıç konumunu ikinci parametre olarak geçirir. 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 Esnasında Hangi Formatlama Korunur?

Copy yöntemi, aşağıdakiler dahil tüm hücre özelliklerini korur:

  • Cell değerleri ve formülleri
  • Sayı formatları (para birimi, yüzde, tarih)
  • Yazı stili (yazı tipi, boyut, kalın, italik, renk)
  • Hücre kenarlıkları ve arka plan renkleri
  • Metin hizalama (yatay ve dikey)
  • Hücre koruma ayarları

Bu kapsamlı koruma, kopyalanan hücrelerin orijinal görünüm ve işlevselliğini korumasını sağlar, Microsoft Excel'de Ctrl+C ve Ctrl+V kullanmaya benzer.

Hücre A1 seçili olan, B3 hücresine kopyalanan değeri gösteren ok ile hücre kopyalama işlemi gösteren elektronik tablo

Neden Kopyalama Yöntemi İki Parametre Alır?

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

  1. Çalışma Sayfası Parametresi: Hedef çalışma sayfasını (çalışma kitabı içinde aynı veya farklı) belirtir
  2. Adres Parametresi: Yapıştırılan içeriğin başlangıç hücre pozisyonunu tanımlar

Bu tasarım, aynı sayfa içinde veya farklı sayfalar arasında esnek kopyalama imkanı tanır, özet raporlar oluşturmak veya birden fazla kaynaktan veri birleştirmek için idealdir.

Tek Hücre Kopyası ile Aralık Kopyası Arasında Ne Zaman Tercih Yapmalıyım?

Tek hücre kopyasını tercih edin:

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

Aralık kopyasını kullanın:

  • Tüm veri tablolarını taşıma
  • Birbirine bağlı birden fazla hücreyi kopyalama
  • Tam satır veya sütunları kopyalama
  • Veri ilişkilerini korurken

Birden Fazla 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 kopyalayın (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 kopyalayın (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ığı kopyalayın (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 alınİkinci parametre, veri girişinin başlangıç noktasını işaretleyen bir adres konumu kabul eder. Kopyalanan veri o 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 Aralık Çok Küçük Olduğunda Ne Olur?

IronXL, boyut farklılıklarını otomatik olarak yönetir:

  • Hedef parametre sadece sol üst başlangıç hücresini belirtir
  • Tüm kaynak aralık, hedef boyutu ne olursa olsun kopyalanır
  • Hedef bölgedeki mevcut veriler üzerine yazılır
  • Tüm kaynak verileri barındırmak için kopyalama işlemi genişler

Örneğin, 3x3 aralığını B1 hücresine kopyalamak, B1:D3 hücrelerini doldurur ve mevcut içeriğin üzerine yazar.

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

IronXL, GetRow() ve GetColumn() yöntemleriyle satır ve sütunlar için sıfır tabanlı indeksleme kullanır:

  • GetColumn(0), A sütununa atıfta bulunur
  • GetColumn(1), B sütununa atıfta bulunur
  • GetRow(0) 1. satırı ifade eder
  • GetRow(3) 4. satırı ifade eder

Bu indekslemeler, standart C# dizi kuralları ile uyumludur.

Neden GetColumn() ve GetRow() Yöntemlerini Kullanmalı?

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

  • Performans: Tüm satırlar 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 yöntemler, tam sütun kopyası gerektiren raporlar oluştururken veya satır şablonlarını çoğaltırken mükemmel sonuç verir.

Kaynak aralıklarından A1:F10'dan hedef hücrelere oklar gösteren ve vurgulanan kopyalanmış verileri sunan Excel kopyalama işlemleri

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

İlk parametre bir çalışma sayfası nesnesini kabul eder, böylece farklı çalışma sayfaları arasında kopyalama ve yapıştırma yapılabilir. İlk parametre olarak farklı bir çalışma sayfası nesnesi pas geçin. This functionality proves essential when managing multiple worksheets or creating summary sheets from detailed data.

Lütfen dikkate alınAşağıdaki örnekte, Copy 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 Çapraz Çalışma Sayfası Kopyalama Senaryoları Nelerdir?

Çapraz çalışma sayfası kopyalama sıklıkla bu senaryolar için hizmet eder:

  1. Özet Sayfalar Oluşturma: Ayrıntı sayfalarından anahtar metrikleri panolara kopyalama
  2. Şablon Kopyalama: Biçimlendirilmiş şablonları yeni çalışma sayfalarına kopyalama
  3. Veri Birleştirme: Bölüm sayfalarındaki verileri ana sayfalara toplama
  4. Rapor Oluşturma: Filtrelenmiş sonuçları ayrı raporlama çalışma sayfalarına kopyalama
  5. Yedekleme İşlemleri: Kritik verileri yedek sayfalara çoğaltma

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

Yeni Çalışma Sayfasına mı Yoksa Mevcut Birine mi Kopyalamalıyım?

Yeni bir çalışma sayfasına kopyala:

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

Mevcut bir çalışma sayfasına kopyala:

  • Sürekli günlüklerde verileri ekleme
  • Pano bölümlerini güncelleme
  • Birden fazla veri kaynağını birleştirme
  • Tarihsel kayıtları koruma

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 Çakış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ıştırma hatalarını önler ve Excel süreçlerini üretim ortamlarında otomatikleştirirken başarılı kopyalama işlemleri sağlar.

Sıkça Sorulan Sorular

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

IronXL ile, Copy yöntemini kullanarak tek bir hücreyi kopyalayabilirsiniz. Sadece kopyalamak istediğiniz hücreyi seçin (örneğin, workSheet["A1"]) ve Copy yöntemini çağırarak, hedef çalışma sayfasına ve hedef hücre adresine parametre olarak geçin. IronXL, kopyalama işlemi sırasında tüm biçimlendirmeleri, yazı tipleri, renkler, kenarlıklar ve formüller dahil olmak üzere korur.

Hücreleri kopyalarken hangi biçimlendirme korunur?

IronXL'ın Copy yöntemi, hücre değerleri ve formüller dahil olmak üzere tüm hücre özelliklerini, numara formatlarını (para birimi, yüzde, tarihler), yazı tipi stilini (yazı tipi, boyut, kalın, italik, renk), hücre kenarlıklarını ve arka plan renklerini, metin hizalamasını (yatay ve dikey) ve hücre koruma ayarlarını korur. Bu, kopyalanan hücrelerin orijinal görünüm ve işlevselliğini korumasını sağlar.

Tüm sütunlar veya aralıklar aynı anda kopyalanabilir mi?

Evet, IronXL tüm sütunları, satırları veya aralıkları tek bir işlemde kopyalamanıza olanak tanır. Tüm bir sütunu kopyalamak için GetColumn(0).Copy() gibi yöntemleri kullanabilir veya birden çok hücreyi aynı anda kopyalamak için bir hücre aralığı seçebilirsiniz. Kopyalama yöntemi, tek bir hücreden tüm çalışma sayfalarına kadar her türlü seçim boyutuyla çalışır.

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

IronXL, çalışma sayfaları arasında hücre kopyalamayı kolaylaştırır. Copy yöntemini kullanırken, hedef çalışma sayfasını ilk parametre olarak (örneğin, workBook.GetWorkSheet("Sheet2")) ve hedef hücre adresini ikinci parametre olarak belirleyin. Bu, aynı çalışma kitabı içindeki farklı sayfalar arasında veri kopyalamanıza olanak tanır.

Excel'de hücre kopyalamak için gereken minimum adımlar nelerdir?

IronXL ile, hücreleri kopyalamak sadece 5 adım gerektirir: 1) IronXL C# kütüphanesini indirin, 2) Var olan Excel tablonuzu yükleyin, 3) Kopyalamak istediğiniz aralığı, satırı veya sütunu seçin, 4) Seçilen aralık üzerinde Copy yöntemini çağırın ve 5) Copy yöntemine bir hedef çalışma sayfası ve konum geçin. Tüm işlem tek bir kod satırında yapılabilir.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapı...

Daha Fazla Oku
Başlamaya Hazır mısınız?
Nuget İndirmeler 2,052,917 | Sürüm: 2026.6 just released
Still Scrolling Icon

Hâlâ Kaydırıyor Musunuz?

Hızlıca kanıt ister misiniz? PM > Install-Package IronXL.Excel
örnek çalıştır verinizin bir hesap tablosu haline geldiğini izleyin.