Buk Siti..
Bisa tolong belajarin saya gak mengenai resep VBS dari Buk Siti :
(udah coba mencerap2.. tapi ngak ada yang nyangkut..)
di table real saya jumlah kolom lebih banyak...
1. Bagaimana agar saya bisa merubah/update code di bawah agar
men-proses kolom2 lainnya. (yang sifatnya sama dengan kolom
nama/alamat)
2. Saat ini yang di buat "abnormalize ulang" kan cuma "posisi" dan
"serial" bagaimana kl saya mau nambah 1 kolom lagi?
3. Trus bagaimana menentukan bahwa cuma kolom posisi, serial, dan
kolom x, yang di buat kesamping "berkali2"?
Semoga Buk Siti paham yang saya maksud.. coz susah juga ngejelasinnya.. :)
++++++++++++++++++++++++++++++++++++++
Option Explicit
Sub AbnormalizeYourTabel()
' siti Vi / milis belajar-excel / 08 apr 2011
'-------------------------------------------
Dim Tbl As Range, NewTbl As Range, Itm As String
Dim n As Long, r As Long, i As Long, tR As Long
Dim c As Integer, u As Integer
Dim StrItm As String
Set Tbl = Sheet1.Cells(4, 2).CurrentRegion
tR = Tbl.Rows.Count
Set NewTbl = Tbl(tR + 6, 1)
StrItm = "|"
Application.Calculation = -4135 'manual
Application.ScreenUpdating = 0
For i = 2 To tR
Itm = Tbl(i, 1) & "|"
If InStr(1, StrItm, Tbl(i, 1), 1) = 0 Then
r = r + 1
StrItm = StrItm & Itm
Tbl(i, 1).Resize(1, 3).Copy
NewTbl(r, 1).PasteSpecial 12
End If
Next i
Application.CutCopyMode = False
Set NewTbl = NewTbl.CurrentRegion
For n = 1 To NewTbl.Rows.Count
c = 0
For i = 2 To tR
If NewTbl(n, 1) = Tbl(i, 1) Then
c = c + 2
Tbl(i, 4).Resize(1, 2).Copy
NewTbl(n, 2 + c).PasteSpecial 12
End If
Next i
Next n
Tbl.Resize(1, Tbl.Columns.Count - 2).Copy NewTbl(0, 1)
u = (NewTbl.CurrentRegion.Columns.Count - 1)
Tbl(1, 4).Resize(1, 2).Copy
For c = 4 To u Step 2
NewTbl(0, c).PasteSpecial xlAll
Next c
Application.CutCopyMode = False
Application.Calculation = -4105 'auto
Application.ScreenUpdating = 1
End Sub
++++++++++++++++++++++++++++++++++++++
On 09-04-2011 11:46 AM, STDEV(i) wrote:
pak Jo belum baca posting siti berikutnya
http://tech.groups.yahoo.com/group/belajar-excel/message/9225
*yg telah diposkan 53 menit sebelum* pak Jo menulis surat dibawah ini