2014-06-01 5 views
0

У меня есть функция в Javascript, которая экспортирует данные в новый файл Excel. Я использую ActiveXObejct («Excel.Application») для работы с Excel. После того, как Экспорт данных завершен, и я вижу результат, данные переполняют ширину столбцов. Это приводит к тому, что некоторые данные выглядят в таблице. Например, если у меня есть данные «1234567890» в ячейке, я увижу «123456» или «######» в ячейке. Итак, как я могу контролировать ширину столбцов, чтобы они соответствовали содержащимся в них данным? Это код пример того, что я обычно делаю:Как контролировать размер столбца Excel в Javascript?

var Excel = new ActiveXObject("Excel.Application"); 
var Sheet = new ActiveXObject("Excel.Sheet"); 
for (var i = 0 ; i < DataArray.length ; i++) 
    Sheet.ActiveSheet.Cells(i+1,1).value = DataArray[i]; 
Excel.visible = true; 
+0

Публикация кода, который вы используете, будет полезна. –

+0

Написал пример кода. – Yoavhayun

ответ

0

После цикла:

Sheet.Cells(,1).EntireColumn.ColumnWidth = 20 

изменит ширину столбца A.

+0

что-то не так с этой строкой кода. Лист, ячейки (1,1) Не имеет свойства EntireColumn или ColumnWidth. – Yoavhayun

+0

Он не отображается в intelli-sense, но это правильно. Однако, возможно, есть дополнительное требование, потому что вы используете это из JavaScript. Кто-то еще может посоветовать вам о стороне JS. –

0

мне удалось найти ответ.

Sheet.ActiveSheet.Cells('A:A').ColumnWidth=11; 

Это изменяет ширину первого cloumn.