2013-04-26 2 views
1

현재 PHP의 Spreadsheet_Excel_Writer로 작업하고 있습니다. 그것은 내가 가진 데이터로 잘 작동합니다. 하지만 이제 데이터를 포맷하고 싶습니다.PHP의 Spreadsheet_Excel_Writer : 단일 셀 정렬

위치, 기사 및 가격이라는 3 개의 열이 있다고 가정 해 보겠습니다. Spreadsheet_Excel_Writer는 각 줄을 올바르게 작성합니다. 하지만 Price- 열의 데이터는 오른쪽 정렬되지만 각 줄의 다른 두 값은 왼쪽 정렬되어야합니다.

->setAlign("left"); 을 사용하면 전체 행이 왼쪽으로 정렬됩니다. 하지만 올바른 값을 찾으려면 하나의 단일 값이 필요합니다. 어떻게하면됩니까? ->setAlign("right");을 쓰면 해당 행의 모든 ​​값이 오른쪽에 정렬됩니다. 만큼 I는 동일한 행에 이대로

$worksheet->writeString($row_pos, $col, $item[$val], $format_pos_data); 

상기 -> 맞춤() - 값은 전체 행에 영향 여기

는 예이다. 그 행동을 바꿀 수있는 방법이 있습니까?

+0

$ format_pos_data 변수의 값은 무엇입니까? –

+1

값은 입니다. $ format_pos_data = & $ this-> workbook-> addFormat(); $ format_pos_data-> setAlign ("left"); ' 하지만 문제를 해결하는 방법을 찾았습니다. 두 개의 다른 변수를 사용해야합니다. 위와 같이 하나이며'-> setAlign ('right')'을 사용합니다. 나는 두 개의 서로 다른 변수를 사용하는 경우 , 그것을 작동 : ' 경우 (strtoupper ($ val에) == "가격") { \t \t \t \t \t \t $ worksheet-> writeString ($ row_pos, $의 COL, $를 item [$ val], $ format_pos_data_right); \t \t \t \t \t한다} else { \t \t \t \t \t \t $ worksheet-> writeString ($ row_pos, $의 COL, $ 항목 [$의 발, $ format_pos_data_left); \t \t \t \t \t} ' –

+1

당신을 위해 좋습니다 :) 답변으로 추가하고 올바른 것으로 표시하여 다른 사용자가 동일한 문제를 발견하면이를 볼 수 있습니다. –

답변

1

문제를 해결하는 방법을 찾았습니다. 나는 두 개의 다른 변수를 가져야 만한다. 하나는 위와 같고 하나는 -> setAlign ('right')입니다. 두 개의 다른 변수를 사용하면 작동합니다 :

if (strtoupper($val) == "PRICE") { 
    $worksheet->writeString($row_pos, $col, $item[$val], $format_pos_data_right); 
} else { 
    $worksheet->writeString($row_pos, $col, $item[$val], $format_pos_data_left); 
}