ファイル関係のオブジェクトを定義する Set objFSO = WScript.CreateObject("Scripting.FileSystemObject") ファイルを開く Set objFile = objFSO.OpenTextFile("ファイルパス") ファイルの存在するフォルダのパス名を返す folderPath = objFSO.getParentFol…
formをPOSTで送信後、ページをリロードするとform再送信の確認メッセージがでる問題。 メッセージを出さないため&再送信を防ぐための方法を考える。 formを送信 ↓ POSTを受け取ったら$_SESSIONに格納。同ページに移動。 ↓ $_SESSIONを使って処理。処理後に破…
宣言 Dim ary() 要素数は1以上の整数でのみ指定可能。変数などはエラーになる。 〇Dim ary(10) ×Dim ary(num) 動的配列 一度宣言した配列を宣言し直す. ReDim aryString(20) こうすると配列の要素は全て空になる. ReDim Preserve aryString(20) Preserveを付…
fetchを使って分かったこと。 ・thenメソッド内でグローバル関数に代入してもブロック外からスコープ出来ない。 ・ブロック外のfunctionへの引数にも指定できない。 ・fetchで取得した自体をグローバル関数に代入することは可能。 基本は fetch(filePath) で…
●ファイルを開く Option ExplicitDim objExcel, bkSet objExcel = CreateObject("Excel.Application")Set bk = objExcel.Workbooks.Open("ファイルパス") ●すでに開いているファイルを取得する Option ExplicitDim objExcel, bkSet objExcel = GetObject(,"E…
Sub CSVconvert() '////////////////////////////// 'csvをworksheetを介さず変換する 'VBSで十分できる '////////////////////////////// Dim fso As Object, inf, outf, aLine, field, wk '取り込むファイルをダイアログで選択、キャンセルで中断 FileN = …
Dim GetPathSet GetPath = WScript.Arguments'ドラッグ&ドロップされていなければ中断If GetPath.Count = 0 Then MsgBox "ファイルをドラッグ&ドロップしてください。",,"警告" Wscript.QuitElseIf GetPath.Count > 1 Then MsgBox "2つ以上のファイルがド…
Dim FileNDim shTHIS As WorksheetDim tmpDim strBufDim clm'取り込むファイルをダイアログで選択、キャンセルで中断FileN = Application.GetOpenFilename("CSVファイル,*.csv")If FileN = False Then Exit Sub'取り込み先のシートを指定Set shTHIS = ThisWo…
Dim FileNameFileName = Application.GetOpenFilename("CSVファイル,*.csv")Workbooks.Open FileName 実行するとファイル選択のダイアログボックスが表示される。選択し【開く】を押すとファイルのフルパスを文字列として取得する。↑この例ではCSVのみ表示さ…
Dim tmpDim strBuf As String, strBuf1 As StringDim i As LongDim LastLEN As LongDim shThis As WorksheetDim CSVpath As String'シートとCSVのパスを指定Set shThis = ThisWorkbook.Worksheets("")CSVpath = ""'取り込み先のシートをクリアWith shThis .C…
Dim ws as worksheetDim wb as workbook SN = "シート名"BN = "ブック名"Bpath = "ブックのPath"'マクロ実行ブックに目的のシートがあれば消すFor Each ws In ThisWorkbook.Worksheets If ws.Name = SN Then ws.DeleteNext ws'目的のブックを開いているか判…
【Excel】VBAでOutlookメールを作成する - 意外となんとかなる日記
・サンプル Range("A1:B" & .Cells(1, 1).End(xlDown).Row).RemoveDuplicates Columns:=Array(1, 2),Header:=xlYes このサンプルはA1からの連続最終行を求め、A1:B最終行の範囲を指定。重複判定Columnsに1列目(A列),2列目(B列)を指定しヘッダー(範囲内の1行…
テーブルから条件を指定して抽出する Worksheets("").Range("").AdvancedFilter _'テーブルを指定 Action:=xlFilterCopy, _ CriteriaRange:=Worksheets("").Range(""), _'抽出条件がある範囲を指定 CopyToRange:=Worksheets("").Range(""), _'抽出先を指定 U…
実行中の表示を更新するかしないか (Trueにするのを忘れずに) Application.ScreenUpdating = False 実行中のアラートを無視するかしないか (Trueにするのを忘れずに)※無視した場合Yesで処理されるので注意 Application.DisplayAlerts = False 選択しているセ…
Dim WB As WorkbookDim fl As Booleanfl = FalseFor Each WB In Workbooks If WB.Name = "ブック名" Then fl = TrueNext WBIf fl Then Workbooks("ブック名").ActivateElse Workbooks.Open ("ディレクトリ+ブック名")End IfNext
VBSでファイルを取得してMsgを表示する Dim objFileSysDim objFolderDim objFile Set objFileSys = CreateObject("Scripting.FileSystemObject") 'フォルダオブジェクトを取得Set objFolder = objFileSys.GetFolder("ディレクトリ名") 'Folderオブジェクトの…
VBSでログファイルを作成する Dim objFSO,objLogSet objFSO = WScript.CreateObject("Scripting.FileSystemObject")Set objLog = objFSO.OpenTextFile("ファイル名",8,True)objLog.WriteLine("任意の文字列")objLog.CloseSet objLog = Nothing Set objFSO = …
VBSで文字列を比較する Dim objRESet objRE = CreateObject("VBScript.RegExp")objRE.Pattern = "比較したい文字列"If objRE.Test("比較する文字列") Then 一致したときの動作Else 一致しないときの動作End IfSet objRE = Nothing 正規表現 文字列の先頭を指…
VBAでアクティブのプリンター名(とポート名)を取得する。 Sub ShowCurrentPrinterName()MsgBox "現在使用しているプリンターは、" & _ Application.ActivePrinter _ & " です。", Title:="現在使用しているプリンターの表示"End Sub
VBScriptでメールを送信する。 Set objMail = CreateObject("CDO.Message") objMail.From = "username@gmail.com" objMail.To = "username@gmail.com" objMail.Subject = "SMTP認証、SSL通信によるメール送信テスト" objMail.TextBody = "CDO.Messageを利用…