2013-03-05 2 views
1

При экспорте листа выравнивание гаснет. половина данных продолжается на следующей строке. Как можно программно выровнять лист и преобразовать его в pdf без выравнивания.Im пытается экспортировать файл Excel в pdf, но выравнивание идет?

Мне нужно что-то похожее на страницу.

+0

Вы пробовали записать макрос для тех же ручных шагов, как вы хотите? В режиме предварительного просмотра вы можете выровнять свои данные и установить ориентацию страницы. –

ответ

0

Ширина PDF зависит от установки параметров печати в Excel, по умолчанию она будет установлена ​​на A4-портрет, поэтому экспортный PDF-файл оставит половину данных следующей строке; если вы установили размер бумаги в A3 Landscape, а затем экспортируете в PDF, он отобразит правильный формат.

0

я испытал те же проблемы, так что я сделал:

  1. для файла листа первенствовать я установить следующие

     xlWorkbook = xlApps.Workbooks.Add(missing); 
         xlWorkSheet = (Excel.Worksheet)xlWorkbook.Worksheets.get_Item(1); 
         xlApps.ActiveWindow.View = Excel.XlWindowView.xlPageLayoutView; //pagelayout view 
         xlWorkSheet.PageSetup.PaperSize = Excel.XlPaperSize.xlPaperA4; //set paper to A4 
         xlWorkSheet.PageSetup.Orientation = Excel.XlPageOrientation.xlPortrait; //set to portrait 
    
         //margins 'Narrow' 
         xlWorkSheet.PageSetup.LeftMargin = 0.65; //55 
         xlWorkSheet.PageSetup.RightMargin = 0.25; 
         xlWorkSheet.PageSetup.BottomMargin = 0.75; 
         xlWorkSheet.PageSetup.TopMargin = 0.75; //60 
         xlWorkSheet.PageSetup.HeaderMargin = 0; 
    
  2. конвертировать мой файл первенствовать и масштабировать размер. (Просто изменить 120, чтобы подогнать размер вашего документа)

     //here is the scaling 
         Worksheet xlmsheet = excelWorkBook.Sheets[1]; 
         xlmsheet.PageSetup.Zoom = 120; 
         // Save it in the target format. 
         if (excelWorkBook != null) 
          excelWorkBook.ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, paramExportFilePath, XlFixedFormatQuality.xlQualityStandard, true, 
           true, Type.Missing, Type.Missing, false, paramMissing); 
    
0

Почему бы просто не использовать FitToPagesWide и FitToPagesTall

xlWorkSheet.PageSetup.Zoom = False 
    xlWorkSheet.PageSetup.FitToPagesWide = 1 
    xlWorkSheet.PageSetup.FitToPagesTall = 1 
Смежные вопросы