2011-05-16 187 views
0

假設我有很多對象,每個對象都有一個UID屬性和一組信用卡NOs card_nosruby​​ csv合併單元格

我想以一種方式將信息轉儲到CVS (Excel) 文件,其方式是將具有相同UID的單元格合併爲一個單元格。其中一個UID的行數與信用卡數量相同,但至少有一個。

下面是一個例子,用戶001有3張卡,所以CVS文件看起來像下面這樣:

 
+-------------+ 
| UID | Card# | 
--------------+ 
|  | Card1 | 
     --------+ 
| 001 | Card2 | 
     --------+ 
|  | Card3 | 
--------------+ 

任何想法?提前致謝。

+0

「CVS(Excel)」? (或CSV?);免得 - >至少 – sawa 2011-05-16 08:33:03

+0

@sawa:CVS文件就夠了。抱歉錯字錯誤。 – user435657 2011-05-16 08:43:00

回答

4

您無法創建一個CSV文件來實現這一點 - CSV格式不支持它。

嘗試另一種方式,您將看到:按照您所描述的格式創建工作表並將其另存爲CSV。您會收到一條警告,以

"[whatever you called it/] may contain features that are not compatible with CSV (Comma delimited)...." 

接受限制,您將獲得一個CSV文件。煤礦是這樣的:

UID,Card# 
001,Card1 
,Card2 
,Card3 

...,當我重新加載它到Excel中確實失去了合併如我所料:

+------+-------+ 
| UID | Card# | 
+------+-------+ 
| 1 | Card1 | 
+------+-------+ 
|  | Card2 | 
+------+-------+ 
|  | Card3 | 
+------+-------+ 

可以,但是,與HTML那裏如果它是有道理的,否則在你的應用程序 - 下面的HTML將與合併後的UID小區負載所描述的(請注意使用了「rowspan」屬性):

<table> 
    <thead> 
    <tr> 
     <td>UID</td> 
     <td>Card#</td> 
    </tr> 
    </thead> 
    <tbody> 
     <tr> 
     <td rowspan="3">001</td> 
     <td>Card1</td> 
     </tr> 
     <tr> 
     <td>Card2</td> 
     </tr> 
     <tr> 
     <td>Card3</td> 
     </tr> 
    </tbody> 
</table>