Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


16997 / 76738 ←次へ | 前へ→

【65203】Re:ファイルアクセスのナンバーをつける
回答  S  - 10/4/27(火) 0:09 -

引用なし
パスワード
   Wordの機能を借りるのはダメですか? 
下のマクロは、ファイル名をフルで指定して実行すると、
自動的に「excelLog.txt」ができて、通し番号に「1」が設定されます。
実行する度に、通し番号が増えます。

Andrew Savikas著『Word Hacks』オライリー・ジャパン刊
「文書に通し番号を付ける」214〜216頁から引用して、
Excelで動くように変更。

Sub MyIniFileNumber()
 Rem 通し番号の読み込み・設定
 Rem 指定したファイルが存在しない場合は、自動生成され、
 Rem 通し番号に「1」が設定される。
 '
 Dim myWord As Object
 Dim MyIniFile As String
 Dim myCurrentNumber As String ' 通し番号
 '
 Rem ファイル名を指定。
 MyIniFile = "C:\Users\User\Documents\Zzz\excelLog.txt"
 '
 On Error Resume Next
 Set myWord = GetObject(, "Word.Application")
 If Err.Number <> 0 Then
  Set myWord = CreateObject("Word.Application")
 End If
 On Error GoTo 0
 '
 Rem ファイルから値を読み込み。
 myCurrentNumber = myWord.System.PrivateProfileString(MyIniFile, "CurrentInvoice", "Number")
 '
 If Len(myCurrentNumber) = 0 Then
  myCurrentNumber = CStr(0)
 End If
 '
 Rem 通し番号の値を加算。
 myCurrentNumber = CStr(CInt(myCurrentNumber) + 1)
 '
 Rem ファイルに値を設定。
 myWord.System.PrivateProfileString(MyIniFile, "Date Time", "Date") = CStr(Date)
 myWord.System.PrivateProfileString(MyIniFile, "Date Time", "Time") = CStr(Time)
 myWord.System.PrivateProfileString(MyIniFile, "CurrentInvoice", "Number") = myCurrentNumber
 '
 Set myWord = Nothing
End Sub ' MyIniFileNumber *----*----*  *----*----*  *----*----*  *----*----*

[End]

0 hits

【65192】ファイルアクセスのナンバーをつける cocoa 10/4/26(月) 10:44 質問
【65193】Re:ファイルアクセスのナンバーをつける Jaka 10/4/26(月) 15:25 発言
【65203】Re:ファイルアクセスのナンバーをつける S 10/4/27(火) 0:09 回答

16997 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free