Excel dosyalarının verilerini yönetme
Hücrelere Veri Ekleme
Aspose.Cells for JavaC++ aracılığıyla Script, Microsoft Excel dosyasını temsil eden Workbook sınıfını sağlar. Workbook sınıfı, Excel dosyasındaki her çalışma sayfasına erişim sağlayan bir worksheets koleksiyonunu içerir. Bir çalışma sayfası Worksheet sınıfıyla temsil edilir. Worksheet sınıfı ise bir cells koleksiyonunu sağlar. cells koleksiyonundaki her öğe, bir Cell sınıfı nesnesini temsil eder.
Aspose.Cells, geliştiricilerin Cell sınıfının putValue metodunu çağırarak hücrelere veri eklemesine olanak tanır. Aspose.Cells, farklı veri türlerini hücrelere eklemeyi sağlayan putValue metodunun aşırı yüklenmiş sürümlerini de sunar. Bu aşırı yüklenmiş metodları kullanarak, hücreye Boolean, dize, double, tam sayı veya tarih/zaman gibi değerler ekleyebilirsiniz.
<!DOCTYPE html>
<html>
<head>
<title>Aspose.Cells Example</title>
</head>
<body>
<h1>Aspose.Cells Example</h1>
<input type="file" id="fileInput" accept=".xls,.xlsx,.csv" />
<button id="runExample">Run Example</button>
<a id="downloadLink" style="display: none;">Download Result</a>
<div id="result"></div>
</body>
<script src="aspose.cells.js.min.js"></script>
<script type="text/javascript">
const { Workbook, SaveFormat } = AsposeCells;
AsposeCells.onReady({
license: "/lic/aspose.cells.enc",
fontPath: "/fonts/",
fontList: [
"arial.ttf",
"NotoSansSC-Regular.ttf"
]
}).then(() => {
console.log("Aspose.Cells initialized");
});
document.getElementById('runExample').addEventListener('click', async () => {
const fileInput = document.getElementById('fileInput');
// If a file is provided, open it; otherwise create a new workbook
let workbook;
if (fileInput.files.length) {
const file = fileInput.files[0];
const arrayBuffer = await file.arrayBuffer();
workbook = new Workbook(new Uint8Array(arrayBuffer));
} else {
workbook = new Workbook();
}
// Obtaining the reference of the first worksheet
const worksheet = workbook.worksheets.get(0);
// Adding values to cells
const cells = worksheet.cells;
const cellA1 = cells.get("A1");
cellA1.value = "Hello World";
const cellA2 = cells.get("A2");
cellA2.value = 20.5;
const cellA3 = cells.get("A3");
cellA3.value = 15;
const cellA4 = cells.get("A4");
cellA4.value = true;
const cellA5 = cells.get("A5");
cellA5.value = new Date();
// Setting the display format of the date
let style = cellA5.style;
style.number = 15;
cellA5.style = style;
// Saving the Excel file
const outputData = workbook.save(SaveFormat.Excel97To2003);
const blob = new Blob([outputData]);
const downloadLink = document.getElementById('downloadLink');
downloadLink.href = URL.createObjectURL(blob);
downloadLink.download = 'output.out.xls';
downloadLink.style.display = 'block';
downloadLink.textContent = 'Download Excel File';
document.getElementById('result').innerHTML = '<p style="color: green;">Workbook created/modified successfully. Click the download link to get the file.</p>';
});
</script>
</html>
Verimliliği Nasıl Arttırılır
Eğer putValue metodunu kullanarak büyük miktarda veri bir çalışma sayfasına yerleştiriyorsanız, verileri önce satır satır, sonra sütun sütun ekmek uygulamanız, uygulamanızın verimliliğini büyük ölçüde artıracaktır.
Hücrelerden Veri Almak
Aspose.Cells for JavaScript C++ aracılığıyla, Workbook Microsoft Excel dosyasını temsil eden bir sınıf sağlar. Workbook sınıfı, dosyadaki çalışma sayfalarına erişim sağlayan bir worksheets koleksiyonu içerir. Bir çalışma sayfası, Worksheet sınıfı ile temsil edilir. Worksheet sınıfı, bir cells koleksiyonu sunar. cells koleksiyonundaki her öğe, Cell sınıfının bir nesnesini temsil eder.
Cell sınıfı, geliştiricilerin hücrelerin değerlerini veri türlerine göre almak için kullanabilecekleri birkaç özellik sağlar. Bu özellikler şunları içerir:
- stringValue: hücrenin dize değerini döndürür.
- doubleValue: hücrenin çift değerini döndürür.
- boolValue: hücrenin boolean değerini döndürür.
- dateTimeValue: hücrenin tarih/zaman değerini döndürür.
- floatValue: hücrenin float değerini döndürür.
- intValue: hücrenin tam sayı değerini döndürür.
Bir alan doldurulmadığında, doubleValue veya floatValue ile işaretlenmiş hücreler istisna fırlatır.
Bir hücrede bulunan verinin tipi, Cell sınıfının type metodu kullanılarak da kontrol edilebilir. Aslında, Cell sınıfının type metodu, aşağıda listelenen önceden tanımlı değerlere sahip CellValueType enum’ına dayanmaktadır:
| Hücre Değer Türleri | Açıklama |
|---|---|
| IsBool | Hücre değerinin Boolean olduğunu belirtir. |
| IsDateTime | Hücre değerinin tarih/saat olduğunu belirtir. |
| IsNull | Boş bir hücreyi temsil eder. |
| IsNumeric | Hücre değerinin sayısal olduğunu belirtir. |
| IsString | Hücre değerinin bir dize olduğunu belirtir. |
| IsUnknown | Hücre değerinin bilinmeyen olduğunu belirtir. |
Yukarıdaki önceden tanımlanmış hücre değeri türlerini, her hücrede bulunan veri türüyle karşılaştırmak için kullanabilirsiniz.
<!DOCTYPE html>
<html>
<head>
<title>Aspose.Cells Example</title>
</head>
<body>
<h1>Read Cell Values Example</h1>
<input type="file" id="fileInput" accept=".xls,.xlsx,.csv" />
<button id="runExample">Run Example</button>
<a id="downloadLink" style="display: none;">Download Result</a>
<div id="result"></div>
</body>
<script src="aspose.cells.js.min.js"></script>
<script type="text/javascript">
const { Workbook, SaveFormat, Worksheet, Cell } = AsposeCells;
AsposeCells.onReady({
license: "/lic/aspose.cells.enc",
fontPath: "/fonts/",
fontList: [
"arial.ttf",
"NotoSansSC-Regular.ttf"
]
}).then(() => {
console.log("Aspose.Cells initialized");
});
document.getElementById('runExample').addEventListener('click', async () => {
const fileInput = document.getElementById('fileInput');
if (!fileInput.files.length) {
document.getElementById('result').innerHTML = '<p style="color: red;">Please select an Excel file.</p>';
return;
}
const file = fileInput.files[0];
const arrayBuffer = await file.arrayBuffer();
// Opening an existing workbook from uploaded file
const workbook = new Workbook(new Uint8Array(arrayBuffer));
// Accessing first worksheet
const worksheet = workbook.worksheets.get(0);
var cells = worksheet.cells;
var maxRow = cells.maxRow;
var maxColumn = cells.maxColumn;
let logs = [];
for (let i = 0; i <= maxRow; i++) {
for (let j = 0; j <= maxColumn; j++)
{
const cell1 = cells.get(i, j);
if (!cell1) {
continue;
}
// Variables to store values of different data types
let stringValue;
let doubleValue;
let boolValue;
let dateTimeValue;
// Passing the type of the data contained in the cell for evaluation
switch (cell1.type) {
// Evaluating the data type of the cell data for string value
case AsposeCells.CellValueType.IsString:
stringValue = cell1.stringValue;
console.log("String Value: " + stringValue);
logs.push("String Value: " + stringValue);
break;
// Evaluating the data type of the cell data for double value
case AsposeCells.CellValueType.IsNumeric:
doubleValue = cell1.doubleValue;
console.log("Double Value: " + doubleValue);
logs.push("Double Value: " + doubleValue);
break;
// Evaluating the data type of the cell data for boolean value
case AsposeCells.CellValueType.IsBool:
boolValue = cell1.boolValue;
console.log("Bool Value: " + boolValue);
logs.push("Bool Value: " + boolValue);
break;
// Evaluating the data type of the cell data for date/time value
case AsposeCells.CellValueType.IsDateTime:
dateTimeValue = cell1.dateTimeValue;
console.log("DateTime Value: " + dateTimeValue);
logs.push("DateTime Value: " + dateTimeValue);
break;
// Evaluating the unknown data type of the cell data
case AsposeCells.CellValueType.IsUnknown:
stringValue = cell1.stringValue;
console.log("Unknown Value: " + stringValue);
logs.push("Unknown Value: " + stringValue);
break;
// Terminating the type checking of type of the cell data is null
case AsposeCells.CellValueType.IsNull:
break;
}
}
}
document.getElementById('result').innerHTML = `<p style="color: green;">Operation completed successfully! See console for detailed cell values.</p><pre>${logs.join("\n")}</pre>`;
});
</script>
</html>
Gelişmiş Konular
- Bir Çalışma Sayfasının Hücrelerine Erişme
- Metin Sayı Değerini Sayıya Dönüştürme
- Alt Toplamlar Oluşturma
- Veri Filtreleme
- Veri Sıralama
- Veri Doğrulama
- Veri Bulma veya Arama
- Biçimlendirmeyle ve biçimlendirme olmadan Hücre Dize Değerini Alın
- Hücre İçinde HTML Zengin Metin Ekleme
- Excel veya OpenOffice’de Hyperlinkler Eklemek
- Numaralandırıcıları Nerede ve Nasıl Kullanılır
- Hücre Değeri Genişliğini ve Yüksekliğini Piksel Birimiyle Ölçme
- Birden Fazla İş Parçacığında Aynı Anda Hücre Değerleri Okuma
- Hücre adı ve satır/sütun indeksi arasında dönüşüm
- Veri İlk Olarak Satır, Sonra Sütun Olarak Doldurma
- Hücre Değerinin veya Aralığın Ön Eklemesini Koruma
- Zengin Metnin Kısımlarına Erişme ve Güncelleme