2013-10-08 122 views
0

我需要將一系列5000行excel文檔導出到mySQL。問題在於excel文件被重複合併。 (見鏈接截圖:http://cgtest.forakergroup.com/images/excel.png重新生成Excel合併單元格

 A1 CHARITY NUM  AMT 
+ A2 name  1  $100 
| + A3    2  $105 
| | A4    2  $105 
| L A5    5  $105 
L A6    5  $105 
+ A7 name2  1  $100 
| + A8    2  $105 
| | A9    2  $105 
| L A10    5  $105 
L A11    5  $105 

我需要在每個地方它已經被合併(A3,A4等)的後續列中插入的慈善機構名稱(目前在A2)。

在Excel中是否有一個函數可以重新填充合併的單元格?

+0

您可以取消合併所有單元格,然後使用上面第一個非空白單元格的值寫入一個宏以填充所有空格。 – ApplePie

+0

如果這個宏是你首選的解決方案,你會考慮發佈它作爲*答案*(代碼可能更容易閱讀!),然後[*接受*](http://stackoverflow.com/help/accepted-answer )呢? – pnuts

回答

0

只要所有單元都沒有合併,以下宏將填充所有空格。

Sub Fill_Empty() 
Dim oRng As Range 
Set oRng = Selection 
Selection.Font.Bold = True 
Selection.SpecialCells(xlCellTypeBlanks).Select 
Selection.Font.Bold = False 
Selection.FormulaR1C1 = "=R[-1]C" 
oRng.Copy 
oRng.PasteSpecial Paste:=xlValues, Operation:=xlNone, _ 
    SkipBlanks:=False, Transpose:=False 
End Sub 

感謝Levasseur提出了編寫宏的建議。

1

如果你需要我認爲你是一個功能是沒有必要的(也沒有代碼)。只需選擇相關的列,首頁>編輯 - 查找&選擇,空白鍵=截至按Ctrl +輸入

+0

除非我做錯了,那麼一次只能改變一個組。宏更新整個工作表。 – wfinley

+0

如果單元格確實合併(例如名稱位於四個空白單元格之上),那麼該列首先需要取消合併。否則應一次應用於整個列。但是你提到了其中已經合併的每個後續欄目(A3,A4等),我可能沒有正確解釋。如果有興趣,請訪問http://www.youtube.com/watch?v=9TDcVOKbm34 – pnuts