Private Sub Command1_Click()
Dim strFileOld As String ' 変更前のファイル名
Dim strFileNew As String ' 変更後のファイル名
' ファイル名を代入する
strFileOld = "sample.txt"
strFileNew = "sample.tmp"
' ファイル名を変更する
Name strFileOld As strFileNew
End Sub
Labelコントロールの型
'MsForms内のコントロール
dim lbl as MsForms.Label
dim chk as MsForms.CheckBox
Left、Right、Mid関数のエラー対策
以下のように「Strings」を使う。
Strings.Left(
キーボード自動操作
Sub test()
Dim objWshShell
Set objWshShell = CreateObject("WScript.Shell")
'objWshShell.AppActivate "無題"
objWshShell.SendKeys "abc~def"
End Sub
ツールバー生成と自作ボタンイメージ
過去ログ
ユーザーフォームにイメージコントロール(image1)を配置し、16サイズの画像を張り付ける。
ThiwWorkbookモジュールに以下のコードを記述
Option Explicit
'ブック起動イベント
Private Sub Workbook_Open()
Debug.Print "ブック起動イベント実行開始"
Call MakeToolBar
End Sub
'ブック閉じるイベント
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Debug.Print "ブック閉じるイベント実行"
Call RemoveToolBar
End Sub
Sub AddMenu()
Dim NewM As CommandBar, NewC As CommandBarControl
''新しいメニューを追加する
' Set NewM = Application.CommandBars("Worksheet Menu Bar").Controls.Add(Type:=msoControlPopup)
Set NewM = Application.CommandBars.Add( _
Name:="文字修飾", Position:=msoBarLeft)
NewM.Caption = "新しいメニュー(&C)"
''オリジナルコマンドを追加する(1)
Set NewC = NewM.Controls.Add
With NewC
.Caption = "保護解除(&U)"
.OnAction = "UnProtectSheet"
.BeginGroup = False
.FaceId = 277
End With
''オリジナルコマンドを追加する(2)
Set NewC = NewM.Controls.Add
With NewC
.Caption = "参照元/先のトレース(&P)"
.OnAction = "Precedents"
.BeginGroup = True
.FaceId = 450
End With
''オリジナル サブメニューを追加する
Set NewC = NewM.Controls.Add(Type:=msoControlPopup)
With NewC
.Caption = "標準に戻す"
.BeginGroup = True
With NewC.Controls.Add()
.Caption = "シートの外観(&S)"
.OnAction = "SheetStyle"
.FaceId = 8
End With
''オリジナル サブメニューのコマンドを追加する
With NewC.Controls.Add()
.Caption = "文字色(&T)"
.OnAction = "DefaultFontColor"
.FaceId = 476
End With
End With
End Sub
'ツールバーを作成する。
Private Sub MakeToolBar()
Dim myBar As CommandBar
Dim myButton As CommandBarControl
Set myBar = Application.CommandBars.Add( _
Name:="SspSetFilesEdit", Position:=msoBarLeft)
myBar.Visible = True
Set myButton = myBar.Controls.Add( _
Type:=msoControlButton, ID:=1)
With myButton
.OnAction = "Moji1"
.FaceId = 230
.BeginGroup = True
.Caption = "レポート作成"
.Picture = UserForm1.Image1.Picture’ユーザーフォーム Image1の画像を貼り付け
.Mask = UserForm1.Image1.Picture’ユーザーフォーム Image1の画像を貼り付け(白が透明になる)
' .TooltipText = "AAA"
' .DescriptionText = "VVV"
.Width = 200
End With
End Sub
'ツールバーを削除する
Private Sub RemoveToolBar()
On Error Resume Next
' Application.CommandBars("文字修飾").Delete
Application.CommandBars("SspSetFilesEdit").Delete
On Error GoTo 0
End Sub
テキストファイル出力
'テキストファイルに出力する。SJIS保存
Private Sub outputTextFile(byref OutPutCll as collectio,ByRef filename As String)
Dim i As Integer
If filename <> "" Then
Open filename For Output As #1
For i = 1 To OutPutCll.Count
Print #1, OutPutCll(i)
Next i
Close #1
End If
End Sub