15

を使用して列幅を自動調整するにはどうすればよいopenxlsxですか?

私の列の 1 つに日付変数 (例: ) があり、Excel から21-08-2017コピーして別の場所に通常どおり貼り付けると、次のように表示されます (Excel でコンテンツを表示するために列幅を大きくすると、通常どおり貼り付けられます)。その反復的なタスクを自分のコードに統合したいと考えています。これが私が今使っているものです:ctrl+c#######

WB <- loadWorkbook(File)
addWorksheet(WB, Sheet)
writeDataTable(WB, Sheet, DF, withFilter=F, bandedRows=F, firstColumn=T)
saveWorkbook(WB, File,  overwrite =TRUE)

関連するコード全体をここに添付しました。テーブルの値に基づいて条件付き書式設定も行っています。ここに列幅の自動調整を統合する方法を提案してください。

編集: デフォルトでは、R からの XLSX 出力の列幅はデフォルトで 8.43 です。セルの内容に応じて自動調整するように設定するか、列ごとに手動で設定する必要があります。

Mod へ: これは、openxlsx を使用して R で解決しようとしている問題です。とにかく、お気遣いありがとうございます。

4

4 に答える 4

20

わかりました、ドキュメントをさらに広範囲に検索した後、それを取得しました。オンラインのソリューションが不足しているため、実際にこれを使用している人はほとんどいないようです...

setColWidths(WB, Sheet, cols = 1:ncol(DF), widths = "auto")

ただし、これでも目的の結果は得られません。日付列はまだ少し短く、表示され########ます。列ヘッダーも適切ではありません (太字でフォーマットされているため)。

編集:

最後に、c(7.5, 10, "auto", ...)だけを置き換えることを選択しまし"auto"た。完全に動的ではありませんが、今のところ問題は解決しています。より良い答えを期待しています。

于 2017-08-24T11:17:09.330 に答える