2014-09-11 2 views
0

Есть ли способ установить ширину столбца в документе Excel через VB.NET в пикселях? Я использую в настоящее время следующий codeline:Установить ширину столбца Excel в пикселях через VB.NET

Sheets(i).Columns("A:A").ColumnWidth = 3.14 

Другая проблема заключается в том, что я использовал макрос для записи ширину столбца и вставить его с вышеуказанным заявлением в моем коде. Но когда я запускаю код, ширина столбца составляет 3,42 вместо 3,14.
Может ли кто-нибудь мне помочь?

ответ

1

Основываясь на этом post, вы можете выполнить вычисление для преобразования единицы измерения excel в пиксели.

Вот отрывок из этого веб-сайта:

ColumnWidth: Одна единица ширины столбца равна ширине одного символа в нормальном стиле. диапазон («A1»). Ширина столбца возвращает 8,43 символов

WIDTH: Возвращает или задает ширину объекта в точках. район ("A1"). Ширина возвращение 48 пункт. 72 точка/дюйм = .6666" = 64 пикселей @ 96 пикселей/дюйм

... Так

Sub testwidth() 
Sheets("sheet3").Activate 
screenres = 96 '96/inch 
mypoints = Sheets("sheet3").Range("A1").Width 
'> returns 48 points 
mychars = Sheets("sheet3").Range("A1").ColumnWidth 
'> returns 8.43 chars 
mypixels = (mypoints/72) * screenres 'pixel width of column 
Debug.Print mypoints, mychars, mypixels 
'> returns 48 8.43 64 
End Sub 

Ширина столбца составляет 48 пунктов или 8.43 символов или 64 пикселя.

Смежные вопросы