如何將excel表的一行根據條件拆分成多行

2023-01-14 13:30:51 字數 5243 閱讀 5277

1樓:匿名使用者

sub 轉換()

dim i, j, s, c, r as integer

r = worksheets(1).[a65525].end(xlup).row

j = 2

for i = 2 to r

for c = 1 to 8

worksheets(2).cells(j, c) = worksheets(1).cells(i, c)

worksheets(2).cells(j, 9) = "左"

worksheets(2).cells(j, 10) = worksheets(1).cells(i, 9)

worksheets(2).cells(j, 11) = worksheets(1).cells(i, 11)

next c

j = j + 1

for c = 1 to 8

worksheets(2).cells(j, c) = worksheets(1).cells(i, c)

worksheets(2).cells(j, 9) = "右"

worksheets(2).cells(j, 10) = worksheets(1).cells(i, 10)

worksheets(2).cells(j, 11) = worksheets(1).cells(i, 11)

next c

j = j + 1

next i

for s = j to 2 step -1

if worksheets(2).cells(s, 10) = 0 then

worksheets(2).cells(s, 10).entirerow.delete

end if

next s

end sub

/不一定使用vba,可以考慮通過公式分拆2行(左、右),之後再篩選刪除數量為 零的行。

2樓:帳號已登出

今天這個問題提幾次了?

如何將excel表的一行根據條件拆分成多行

3樓:匿名使用者

用left函式,此函式可以用於返回文字字串中的第一個字元或前幾個字元,語法: left(text,num_chars)

,比方說你想取b2單元格里面前三個字元,可以寫成=left(b2,3),後面的3表示你想取多少個字元

4樓:生如夏冰

僅靠公式肯定是實現不了的,需要編寫vb

excel中如何將一行資料根據屬性拆分成多行資料 20

5樓:匿名使用者

你好!這題目是一個典型的將一個交叉表(二維表)資料轉換為資料庫記錄(一行一行的記錄)表的操作過程,我可以給你一個操作,稍等。

1、先將表整理一下,取消合併單元格,為了唯一值,在每個科目前加一個科目**列(如圖),

2、以身份證號加科目**為唯一值,在表前加三空列,a2=h2&i2,b2=h2&m2,c2=h2&q2, 下拉,得到全部值,然後複製這3列值,再選擇性貼上為數值(因公式所得值不能當引數);

3、複製前三列值(不包括表頭),貼上---選擇性貼上為數值---轉置,

4、列公式,錯位相等,再下拉公式,直到值為0出現時,這樣就把原來的交叉資料變成一列唯一的記錄。

5、再複製得到的新列a,選擇貼上為數值,原表後面的列值全部可以用vlookup( )函式實現。b30=vlookup(a30, $a$1:$t$6, 6, 0), c30=vlookup(a30, $a$1:

$t$6, 7, 0),

因本人經常與資料庫打交道,常用excel轉換資料,這個方法當你面對海量資料進行加工時,特別實用,希望對你用。謝謝

6樓:第二茗

這個個可以的

後面成績的部分沒寫,思路是這樣,後面的index裡面地址要麼手動換,要麼你自己加一個offset

然後下拉拖動

注意第一行需要手動

=if(countif($c$9:c11,c11)

c11,$c$9:c11))),0,3,1,6)),c11,index($c$2:$c$3,sumproduct(1/countif($c$9:

c11,$c$9:c11))+1))

7樓:匿名使用者

【**和**已更新過,開始上傳的答案有點問題,現在正確了。】

你這個問題,公式不好解決。用vba**吧。

先看下圖:

方法:點頂部的「開發者工具」,點「visualbasic」開啟vb編輯器,

在畫藍色框的區域內的任意位置,點右鍵---插入模組,

點選模組,在右側輸入**,

點選畫粉色圓圈的按鈕執行**,即可得出結果。

**中加了註釋文字,方便你看懂,

**如下:

sub 拆分資料()

dim i, t as integer '定義i和t的型別

for i = 3 to 4 '遍歷原資料所在行,從第3行到第4行

x = evaluate("counta(f" & i & ",i" & i & ",l" & i & ")") '統計fi、ii、li非空單元格個數

if [a10] = "" then '資料從a10單元格開始寫

s = 10 '如果a10格是空的,則s=10

else

s = [a65536].end(3).row + 1 '否則s=a列最後一個資料的行號+1

end if

for t = s to s + x - 1 '遍歷該同學需寫資料的行,從第s行到第s+x-1行

range("a" & t) = range("a" & i)

range("b" & t) = range("b" & i)

range("c" & t) = range("c" & i)

range("d" & t) = range("d" & i)

range("e" & t) = range("e" & i)

range("f" & t) = cells(i, 5 + (t - s) * 3 + 1) '5指原資料中第一個科目左側列的列序數

range("g" & t) = cells(i, 5 + (t - s) * 3 + 2) '例圖上第一個科目左列為e列的列序數是5

range("h" & t) = cells(i, 5 + (t - s) * 3 + 3) '3指原資料科目列序數等差,f、i、l的列等差為3

next t

next i

end sub

excel 中如何將一行資料按照規則計算拆分成多行資料?

8樓:縹緲一樣

用公式就可以達到這個目的,當然你也可以使用巨集來完成。下面給介紹一種簡單的,公式假設你的資料是sheet1工作表的第一列在sheet2工作表的a1單元格輸入"=indirect(address(10*(row()-1)+column(),1,,,"sheet1"))",向右複製到j列,然後再向下複製,就可以達到你的目的。

9樓:小龍崇者

你現在有表1和表2,要列出表3?

資料就是圖中的資料嗎?最好把真實資料(至少是正確的單元格位置)顯示出來。

10樓:大肚有話說

用一個左外連線(left join on)可以輕鬆解決

excel裡如何把一行多列按照一定的條件判斷分成多行? 100

11樓:平陽虎

如下圖,在a6中輸入公式

=if(mod(column(a1),4),offset($a$1,,row(a1)*4-4+mod(column(d1),4)),"")

回車確認後右拖、下拉填充。

12樓:陽光上的橋

兩步,1.分列,2.轉置。

如何將excel一行中的多個條件變成多行 5

13樓:

excel如何快速插入多行

怎麼樣把excel裡一行分成多行

14樓:魚木混豬喲

如果有規律的話

可以使用分列,按照固定寬度或者間隔符號將一行資料分成多列

然後再利用選擇性貼上,轉置,將列轉換成行

15樓:吉祿學閣

du有兩種方式,具體

zhi操作如下:

將游標放在需要dao斷行的字末尾版,使用雙鍵:「alt+enter」,

權其它各處繼續使用該雙鍵,即可實現一行分多行。

選中單元格→右鍵單元格格式→文字控制,選中「自動換行」前面的方框→確定,也可實現目的。

16樓:匿名使用者

不知道你在填寫的時候是怎麼填寫的,是寫在一格里面了嗎,如果是,建議你在寫時就寫在多格里,這樣方面合併和拆分

17樓:流年易老

資料-----分列---分列符號-----選空格---下一步。完成

不好意思。發完才看見這麼多高人。遲了

18樓:善良的豬頭

如果資料格式固定的話,按照以下操作

1,資料選單中選擇分列

2,在嚮導第一步選擇固定寬度

3,在嚮導第二步自己按照需求點選需要拆分的寬度;

4,確定就可以了。

操作過程中部分資料有空格,可以用查詢替換替換掉

19樓:匿名使用者

沒有規律的很難處理,你拷貝到word中,手工劃出你要的**,然後再拷貝到excel中

20樓:匿名使用者

在資料選單中找分列,然後自己調調就出來了

21樓:e俠兔

用分列功能:資料、分列、下一步、勾選空格、完成。

excel表裡面怎麼將一行裡面一大段的多行內容拆分成多行,如圖所示 10

22樓:斯飛昂

1、把該單元格所在列的寬度調整為每一行的寬度

2、點選-開始-填充下拉-內容重排,確定即可 有的版本叫兩端對齊

23樓:匿名使用者

用mid函式,很簡單就解決了

24樓:

寫**或許可能快捷解決

如何將ecel中的第一行置頂,如何將Excel中的第一行置頂?

在滾動時保持行列標誌可見 如果要在視窗頂部生成水平凍結窗格,請選定待拆分處下邊一行。如果要在視窗左側生成垂直凍結窗格,請選定待拆分處右邊一列。如果要同時生成頂部和左側凍結的窗格,請單擊待拆分處右下方的單元格。單擊 視窗 選單中的 凍結窗格 命令。這樣很簡單的阿,滑鼠選中第二行,然後點選 視窗 凍結視...

如何讓excel一行的顏色根據某一列單元格值的而變化變化

工具欄裡面的 條件格式,通過條件格式設定可以達到你的要求 如何讓excel一行的顏色根據某一列單元格值的而變化變化 假設資料在第2行,需要根據c2單元格的值變化而改變整行的填充色。選擇需要設定的專行,在 條件格式屬 中,新建規則 以 公式 建立規則,輸入 c2 10 格式設定為填充色黃色,確定 同時...

EXCEL如何將柱狀表和折線表放在同圖表裡

1 選中要作圖的源資料範圍。2 然後常規的,插入 圖表 下一步 完成。3 然後在圖表選項裡面,設定你所要設定的數值等等,把數值標出來時需要對勾標出,然後完成初步雙柱圖。4 點中需要變成折線的柱狀圖 注意如果只是點中其中一個或者兩個的話,再單擊右鍵是出不來 圖表型別 等選項的 然後單擊圖表型別。5 然...