x = Format(CInt(Mid(Sheets(2).Name, 3, 2)) + 1, "00")

sebetulnya sangat riskan  (Rawan salah & Rawan nguawurr)  membcarakan makro
tanpa melihat object yg di-makro-in...

*CInt* fungsi untuk mengkonversi  *STRING berisi Angka* menjadi BILANGAN
asal masih di skope Integer  (+/- 32 ribuan)
bisa dicoba dengan fungsi lain misal  Val, CLng,

*Format*  adalah fungsi yg setara dengan fungsi TEXT di worksheet
dlm kasus di atas mentext kan bilangan  menjadi bentuk dua karakter dengan
leading zero
tetapi data hasilnya bertype String



2011/4/13 Herry Sutjipto <[email protected]>

>
>
> Baik mbak STDEV(i) and Alll,
>
> Sekarang kembali ke persoalan lama, terlampir saya sertakan Macro made by
> mbak  STDEV(i) yang sudah sedikit saya modifikasi, sbb:
>
> Sub DaftarSheet()
> '------------------------
> ' siti Vi / jan 2010
> '------------------------
> ' Mendaftar nama sheet dalam workbook
> '
>    Dim lSheet As Long
>    Dim iRow As Long
>    Dim Bln As String
>
>    iRow = 6
>    Bln = Mid(Sheets(2).Name, 3, 2)
>    If Val(Bln) > 0 And Val(Bln) < 13 Then
>       Bln = Format(DateSerial(2010, CInt(Bln), 1), _
>             "[$-421]MMMM") & " 20" & Mid(Sheets(2).Name, 5, 2)
>
>    Else
>       Bln = "Error nama sheet: " & Sheets(2).Name
>       Range("A1") = Bln
>       Exit Sub
>    End If
>    Range("A1") = "RESUME REALISASI PEMANFAATAN DANA BULAN " + UCase(Bln)
>    Range("L5") = "='[BS 2011 " + Mid(Sheets(2).Name, 3, 2) +
> ".xls]Resume'!$Q$37"
>    Range("R5") = "='[BS 2011 " + Mid(Sheets(2).Name, 3, 2) +
> ".xls]Resume'!$R$37"
>
>    'bersihkan lokasi penulisan
>    Range("B6:B36").ClearContents
>    'loop diseluruh worksheet di workbook
>    For lSheet = 2 To Sheets.Count             'loop dari index 2 ke jumlah
> seluruh sheet
>       Range("B" & iRow) = Sheets(lSheet).Name 'tulis nama sheet
>       iRow = iRow + 1
>    Next lSheet                                'loop lSheet
> End Sub
>
> Isi dari Mid(Sheets(2).Name, 3, 2) adalah string.
> Bagaimana mengurangi nilai Mid(Sheets(2).Name,3,2) dengan 1, kemudian
> dijadikan string  lagi tetap dua digit, supaya statement tetap benar dan
> rumusnya tidak error?
>
> Terima kasih.
> Herry Sutjipto
>
>

Kirim email ke