Excel Çalışma Sayfasındaki Hücreleri Koruyun

Microsoft Excel, elektronik tablolar oluşturmak ve yönetmek için yaygın olarak kullanılan bir araçtır. Excel’in temel özelliklerinden biri, veri bütünlüğünü korumak için belirli hücreleri koruma yeteneğidir. Bu eğitimde, Aspose.Cells for .NET’i kullanarak bir Excel tablosundaki belirli hücreleri korumanız için size adım adım rehberlik edeceğiz. Aspose.Cells for .NET, mükemmel esneklik ve gelişmiş özelliklerle Excel dosyalarını yönetmeyi kolaylaştıran güçlü bir programlama kütüphanesidir. Önemli hücrelerinizi nasıl koruyacağınızı ve verilerinizi nasıl güvende tutacağınızı öğrenmek için verilen adımları izleyin.

1. Adım: Ortamı ayarlama

Geliştirme ortamınızda Aspose.Cells for .NET’in kurulu olduğundan emin olun. Kütüphaneyi Aspose resmi web sitesinden indirin ve kurulum talimatları için belgelere bakın.

Adım 2: Çalışma Kitabını ve Çalışma Sayfasını Başlatma

Başlamak için yeni bir çalışma kitabı oluşturmamız ve hücreleri korumak istediğimiz çalışma sayfasının referansını almamız gerekiyor. Aşağıdaki kodu kullanın:

// Belgeler dizininin yolu.
string dataDir = "YOUR DOCUMENTS DIRECTORY";
// Zaten mevcut değilse dizini oluşturun.
bool exists = System.IO.Directory.Exists(dataDir);
if (! exists)
     System.IO.Directory.CreateDirectory(dataDir);

// Yeni bir çalışma kitabı oluştur
Workbook workbook = new Workbook();

// İlk çalışma sayfasını alın
Worksheet sheet = workbook.Worksheets[0];

Bu kod parçasında öncelikle Excel dosyasının kaydedileceği dizinin yolunu tanımlıyoruz. Daha sonra yeni bir örneğini oluşturuyoruz.Workbook sınıfını kullanın ve kullanarak ilk çalışma sayfasına referans alın.Worksheets mülk.

Adım 3: Hücre Stilini Tanımlayın

Şimdi korumak istediğimiz hücrelerin stilini tanımlamamız gerekiyor. Aşağıdaki kodu kullanın:

// Stil nesnesini tanımlayın
Styling styling;

// Çalışma sayfasındaki tüm sütunlar arasında dolaşın ve bunların kilidini açın
for (int i = 0; i <= 255; i++)
{
     style = sheet.Cells.Columns[(byte)i].Style;
     style. IsLocked = false;
     leaf.Cells.Columns[(byte)i].ApplyStyle(style, new StyleFlag { Locked = true });
}

Bu kodda, çalışma sayfasındaki tüm sütunlar arasında döngü yapmak ve stilin ayarını yaparak hücrelerinin kilidini açmak için bir döngü kullanıyoruz.IsLocked mülkiyetfalse . Daha sonra şunu kullanırız:ApplyStyle stili sütunlara uygulama yöntemiStyleFlag hücreleri kilitlemek için bayrak.

Adım 4: Belirli Hücreleri Koruyun

Şimdi kilitlemek istediğimiz belirli hücreleri koruyacağız. Aşağıdaki kodu kullanın:

// Üç hücreyi kilitleyin: A1, B1, C1
style = sheet.Cells["A1"].GetStyle();
style. IsLocked = true;
sheet.Cells["A1"].SetStyle(style);

style = sheet.Cells["B1"].GetStyle();
style. IsLocked = true;
sheet.Cells["B1"].SetStyle(style);

style = sheet.Cells["C1"].GetStyle();
style. IsLocked = true;
sheet.Cells["C1"].SetStyle(style);

Bu kodda, her bir hücrenin stilini aşağıdakileri kullanarak elde ederiz:GetStyle yöntemini ayarladık ve sonraIsLocked stilin özelliğitrueHücreyi kilitlemek için. Son olarak güncellenen stili her hücreye aşağıdaki komutu kullanarak uyguluyoruz:SetStyle yöntem.

Adım 5: Çalışma sayfasını koruma

Artık korunacak hücreleri tanımladığımıza göre çalışma sayfasının kendisini koruyabiliriz. Aşağıdaki kodu kullanın:

// Çalışma sayfasını koruyun
leaf.Protect(ProtectionType.All);

Bu kod şunu kullanır:Protect bu durumda çalışma sayfasını belirtilen koruma türüyle koruma yöntemiProtectionType.All çalışma sayfasındaki tüm öğeleri korur.

Adım 6: Excel dosyasını kaydedin

Son olarak yaptığımız değişikliklerin bulunduğu Excel dosyasını kaydediyoruz. Aşağıdaki kodu kullanın:

// Excel dosyasını kaydedin
workbook.Save(dataDir + "output.xls", SaveFormat.Excel97To2003);

Bu kodda şunu kullanıyoruz:Save çalışma kitabını belirtilen dizine kaydetme yöntemiExcel97To2003 biçim.

Aspose.Cells for .NET kullanarak Excel Çalışma Sayfasındaki Hücreleri Korumak için örnek kaynak kodu

//Belgeler dizininin yolu.
string dataDir = "YOUR DOCUMENT DIRECTORY";
// Henüz mevcut değilse dizin oluşturun.
bool IsExists = System.IO.Directory.Exists(dataDir);
if (!IsExists)
    System.IO.Directory.CreateDirectory(dataDir);
// Yeni bir çalışma kitabı oluşturun.
Workbook wb = new Workbook();
// Bir çalışma sayfası nesnesi oluşturun ve ilk sayfayı edinin.
Worksheet sheet = wb.Worksheets[0];
// Stil nesnesini tanımlayın.
Style style;
// Stil bayrağı nesnesini tanımlayın
StyleFlag styleflag;
// Çalışma sayfasındaki tüm sütunlar arasında dolaşın ve bunların kilidini açın.
for (int i = 0; i <= 255; i++)
{
    style = sheet.Cells.Columns[(byte)i].Style;
    style.IsLocked = false;
    styleflag = new StyleFlag();
    styleflag.Locked = true;
    sheet.Cells.Columns[(byte)i].ApplyStyle(style, styleflag);
}
// Üç hücreyi kilitleyin... yani A1, B1, C1.
style = sheet.Cells["A1"].GetStyle();
style.IsLocked = true;
sheet.Cells["A1"].SetStyle(style);
style = sheet.Cells["B1"].GetStyle();
style.IsLocked = true;
sheet.Cells["B1"].SetStyle(style);
style = sheet.Cells["C1"].GetStyle();
style.IsLocked = true;
sheet.Cells["C1"].SetStyle(style);
// Son olarak, sayfayı şimdi koruyun.
sheet.Protect(ProtectionType.All);
// Excel dosyasını kaydedin.
wb.Save(dataDir + "output.xls", SaveFormat.Excel97To2003);

Çözüm

Tebrikler! Aspose.Cells for .NET’i kullanarak bir Excel tablosundaki belirli hücreleri nasıl koruyacağınızı öğrendiniz. Artık bu tekniği kendi projelerinizde uygulayabilir ve Excel dosyalarınızın güvenliğini artırabilirsiniz.

SSS

S: Bir Excel tablosundaki hücreleri korumak için neden Aspose.Cells for .NET kullanmalıyım?

C: Aspose.Cells for .NET, Excel dosyalarıyla çalışmayı kolaylaştıran güçlü bir kütüphanedir. Hücreleri korumak, aralıkların kilidini açmak vb. için gelişmiş özellikler sunar.

S: Tek tek hücreler yerine hücre aralıklarını korumak mümkün mü?

C: Evet, korumayı kullanarak belirli hücre aralıklarını tanımlayabilirsiniz.ApplyStyle uygun bir yöntemleStyleFlag.

S: Korumalı Excel dosyasını kaydettikten sonra nasıl açabilirim?

C: Korumalı Excel dosyasını açtığınızda, çalışma sayfasını korurken belirttiğiniz şifreyi girmeniz gerekecektir.

S: Excel elektronik tablosuna uygulayabileceğim başka koruma türleri var mı?

C: Evet, Aspose.Cells for .NET, yapı koruması, pencere koruması vb. gibi birden fazla koruma türünü destekler. İhtiyaçlarınıza göre uygun koruma türünü seçebilirsiniz.