[問題] excel使用vba建立彙整資料
(若是和其他不同軟體互動之問題 請記得一併填寫)
軟體:Microsoft Excel
版本:2003
我原本有這樣的一個資料
性別 生日 診別 科別代碼 科別名稱 就診日 病歷號 診斷碼1 診斷碼2 診斷碼3 藥品代
碼 藥品名稱 給藥天數
0 E 0201 一般內科 0960603 A1 729.4 BNACL9 Sodium Chloride 0.9%
500ml/bot 1
我想把他彙整成下列這種形式
性別 生日 診別 科別代碼 科別名稱 就診日 病歷號 診斷碼1 診斷碼2 診斷碼3 藥品代
碼
0 E 0201 一般內科 0960603 A1 729.4 BNACL9 IKCL10 ILORA2 OALPR5
OCHLZ2
就是將藥品代碼從直列式顯示換橫列式顯示,而且還要使用日期分類
我有寫好的vba程式,可是不知道該如何改,請各位指導一下
程式碼如下
<!-- 程式碼開始 -->
Private Sub CommandButton1_Click()
search_line = 4: paste_line = 2
search_line_str = Trim(Str(search_line))
Sheets("彙整資料").Range("a3:iv10000") = ""
Sheets("原始資料").Select
Do While (Range("g" + search_line_str) <> "")
If search_line > 3 Then
paste_line = paste_line + 1
paste_line_str = Trim(Str(paste_line))
aa = Range("g" + search_line_str)
Range("j1") = aa
add_line = search_line + Range("k1") - 1
add_line_str = Trim(Str(add_line))
Sheets("彙整資料").Range("a" + paste_line_str) = Range("a" +
search_line_str)
Sheets("彙整資料").Range("b" + paste_line_str) = Range("b" +
search_line_str)
Sheets("彙整資料").Range("c" + paste_line_str) = Range("c" +
search_line_str)
Sheets("彙整資料").Range("d" + paste_line_str) = Range("d" +
search_line_str)
Sheets("彙整資料").Range("e" + paste_line_str) = Range("e" +
search_line_str)
Sheets("彙整資料").Range("f" + paste_line_str) = Range("f" +
search_line_str)
Sheets("彙整資料").Range("g" + paste_line_str) = Range("g" +
search_line_str)
Sheets("彙整資料").Range("h" + paste_line_str) = Range("h" +
search_line_str)
Sheets("彙整資料").Range("i" + paste_line_str) = Range("i" +
search_line_str)
Sheets("彙整資料").Range("j" + paste_line_str) = Range("j" +
search_line_str)
Range("K" + search_line_str + ":K" + add_line_str).Select
Selection.Copy
Sheets("彙整資料").Select
Sheets("彙整資料").Range("k" + paste_line_str).Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone,
SkipBlanks:= _
False, Transpose:=True
Sheets("原始資料").Select
Application.CutCopyMode = False
search_line = add_line + 1
search_line_str = Trim(Str(search_line))
End If
Loop
End Sub
<!-- 程式碼結束 -->
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.69.148.252