カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

VBA Excelシートを別ファイルにコピー

'# Excel作成
Public Sub mkExcel_withInvoice()
On Error GoTo Exception

 Dim xl As Object
 Dim xl2 As Object
 Dim TempPath As String
 Dim Template As String
 Dim SavePath As String
 Dim FileName As String
 TempPath = "C:\"
 Template = TempPath & "雛型.xls"
 SavePath = Environ("USERPROFILE") & "\デスクトップ\"
 FileName = SavePath & "シートを別ファイルにコピー.xls"

 FileCopy Template, FileName

 Set xl = GetObject(FileName, "Excel.Sheet")
 xl.Parent.Windows(1).Visible = True

続きを読む…»

7,556 views

SQL実行

DoCmd.RunSQL "SQL Statement"[, UserTransaction=True]
2,556 views

PCが起動しているかを調べる

Private Sub Example()

  If PingResult("192.168.1.1") = False Then
    MsgBox "PCが起動していません。"
  Else
    MsgBox "PCは起動しています。"
  End If

End Sub

Function PingResult(strHostname As String)

  Dim objWMIService As Object, objStatus As Variant

  Set objWMIService = _
    GetObject("winmgmts:{impersonationLevel=impersonate}"). _
    ExecQuery("select * from Win32_PingStatus where address = '" & _
    strHostname & "'", , 48)

  For Each objStatus In objWMIService
    If IsNull(objStatus.StatusCode) Or objStatus.StatusCode <> 0 Then
      PingResult = False
    Else
      PingResult = True
    End If
  Next

End Function
7,334 views

レポートのレコードソースを変更したい

原則として、できません。

無理矢理にでもやりたい場合は、一旦デザインモードで表示させ、
レコードソースを変更する必要があります。
例)

Dim MyReport As Report

'デザインビューでレポート事前に開く必要があります。
DoCmd.OpenReport "sample", acViewDesign

'最小化するためにレポートを特定
DoCmd.SelectObject acReport, "sample", False
'最小化
DoCmd.Minimize

Set MyReport = Reports!sample

MyReport.RecordSource = "[ Record Source ]"
8,208 views

VBでの正規表現

VBで正規表現を使った文字列検索を実装します。

Dim regEx As Object
Dim Matches As Variant

'正規表現オブジェクト
Set regEx = CreateObject("VBScript.RegExp")
'検索文字列全体について検索する
'regEx.Global = True
'最初の一致を検索する(既定値)
'regEx.Global = False

'検索するときに大文字と小文字を区別しない
'regEx.IgnoreCase = True
'検索するときに大文字と小文字を区別する(既定値)
'regEx.IgnoreCase = False

'検索するパターン
regEx.Pattern = "検索パターン"

続きを読む…»

5,765 views