タイトル | : list Boxの表示について |
記事No | : 799 |
投稿日 | : 2004/04/07(Wed) 01:16 |
投稿者 | : 照夫 |
[OSのVer]:Windows XP [VBのVer]:VB.NET 最初は、VB6.0で作成しようとしていたのですが、今はVB6.0のソフトは販売していないといわれ VB.NETを購入し VB6.0からVB.NETへアップグレードしたものですが、 実行させると、List Boxの表示が 例 \\Mts0301\data03\120\123\sm03\smgyoumu03\品質改善(この品質改善はsmgyoumu03フォルダー内 にある フオルダーです) とDirまで全て表示します。 この表示を何とか 品質改善 とだけ表示できないものでしょうか。 この表示した 品質改善 を選択すると、品質改善内のファイルが全て表示させて選択したい のですが
Option Strict Off Option Explicit On Friend Class Form1 Inherits System.Windows.Forms.Form #Region "Windows フォーム デザイナによって生成されたコード"
Public Sub New() MyBase.New() If m_vb6FormDefInstance Is Nothing Then If m_InitializingDefInstance Then m_vb6FormDefInstance = Me Else Try 'スタートアップ フォームについては、最初に作成さ れたインスタンスが既定インスタンスになります。 If System.Reflection.Assembly.GetExecutingAssembly.EntryPoint.DeclaringType Is Me.GetType Then m_vb6FormDefInstance = Me End If Catch End Try End If End If 'この呼び出しは、Windows フォーム デザイナで必要です。 InitializeComponent() End Sub 'Form は、コンポーネント一覧に後処理を実行するために dispose をオーバーライドします 。 Protected Overloads Overrides Sub Dispose(ByVal Disposing As Boolean) If Disposing Then If Not components Is Nothing Then components.Dispose() End If End If MyBase.Dispose(Disposing) End Sub 'Windows フォーム デザイナで必要です。 Private components As System.ComponentModel.IContainer Public ToolTip1 As System.Windows.Forms.ToolTip Public WithEvents Command3 As System.Windows.Forms.Button Public WithEvents File1 As Microsoft.VisualBasic.Compatibility.VB6.FileListBox Public WithEvents Command2 As System.Windows.Forms.Button Public WithEvents List1 As System.Windows.Forms.ListBox Public WithEvents Command1 As System.Windows.Forms.Button Public WithEvents Label2 As System.Windows.Forms.Label Public WithEvents Label1 As System.Windows.Forms.Label 'メモ : 以下のプロシージャは Windows フォーム デザイナで必要です。 'Windows フォーム デザイナを使って変更できます。 'コード エディタを使って修正しないでください。 <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent() Me.components = New System.ComponentModel.Container Me.ToolTip1 = New System.Windows.Forms.ToolTip(Me.components) Me.Command3 = New System.Windows.Forms.Button Me.File1 = New Microsoft.VisualBasic.Compatibility.VB6.FileListBox Me.Command2 = New System.Windows.Forms.Button Me.List1 = New System.Windows.Forms.ListBox Me.Command1 = New System.Windows.Forms.Button Me.Label2 = New System.Windows.Forms.Label Me.Label1 = New System.Windows.Forms.Label Me.SuspendLayout() ' 'Command3 ' Me.Command3.BackColor = System.Drawing.SystemColors.Control Me.Command3.Cursor = System.Windows.Forms.Cursors.Default Me.Command3.Font = New System.Drawing.Font("MS Pゴシック", 12.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(128, Byte)) Me.Command3.ForeColor = System.Drawing.SystemColors.ControlText Me.Command3.Location = New System.Drawing.Point(320, 240) Me.Command3.Name = "Command3" Me.Command3.RightToLeft = System.Windows.Forms.RightToLeft.No Me.Command3.Size = New System.Drawing.Size(121, 49) Me.Command3.TabIndex = 4 Me.Command3.Text = "ユーザ選択" ' 'File1 ' Me.File1.BackColor = System.Drawing.SystemColors.Window Me.File1.Cursor = System.Windows.Forms.Cursors.Default Me.File1.Font = New System.Drawing.Font("MS Pゴシック", 11.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(128, Byte)) Me.File1.ForeColor = System.Drawing.SystemColors.WindowText Me.File1.Location = New System.Drawing.Point(24, 240) Me.File1.Name = "File1" Me.File1.Pattern = "*.*" Me.File1.Size = New System.Drawing.Size(273, 64) Me.File1.TabIndex = 3 ' 'Command2 ' Me.Command2.BackColor = System.Drawing.SystemColors.Control Me.Command2.Cursor = System.Windows.Forms.Cursors.Default Me.Command2.Font = New System.Drawing.Font("MS Pゴシック", 12.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(128, Byte)) Me.Command2.ForeColor = System.Drawing.SystemColors.ControlText Me.Command2.Location = New System.Drawing.Point(440, 360) Me.Command2.Name = "Command2" Me.Command2.RightToLeft = System.Windows.Forms.RightToLeft.No Me.Command2.Size = New System.Drawing.Size(72, 33) Me.Command2.TabIndex = 2 Me.Command2.Text = "終 了" ' 'List1 ' Me.List1.BackColor = System.Drawing.SystemColors.Window Me.List1.Cursor = System.Windows.Forms.Cursors.Default Me.List1.Font = New System.Drawing.Font("MS Pゴシック", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(128, Byte)) Me.List1.ForeColor = System.Drawing.SystemColors.WindowText Me.List1.Location = New System.Drawing.Point(23, 72) Me.List1.Name = "List1" Me.List1.RightToLeft = System.Windows.Forms.RightToLeft.No Me.List1.SelectionMode = System.Windows.Forms.SelectionMode.MultiExtended Me.List1.Size = New System.Drawing.Size(513, 69) Me.List1.TabIndex = 1 ' 'Command1 ' Me.Command1.BackColor = System.Drawing.SystemColors.Control Me.Command1.Cursor = System.Windows.Forms.Cursors.Default Me.Command1.Font = New System.Drawing.Font("MS Pゴシック", 12.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(128, Byte)) Me.Command1.ForeColor = System.Drawing.SystemColors.ControlText Me.Command1.Location = New System.Drawing.Point(32, 24) Me.Command1.Name = "Command1" Me.Command1.RightToLeft = System.Windows.Forms.RightToLeft.No Me.Command1.Size = New System.Drawing.Size(96, 41) Me.Command1.TabIndex = 0 Me.Command1.Text = "項目選択" ' 'Label2 ' Me.Label2.BackColor = System.Drawing.Color.FromArgb(CType(192, Byte), CType(255, Byte), CType(192, Byte)) Me.Label2.Cursor = System.Windows.Forms.Cursors.Default Me.Label2.Font = New System.Drawing.Font("MS Pゴシック", 18.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(128, Byte)) Me.Label2.ForeColor = System.Drawing.SystemColors.ControlText Me.Label2.Location = New System.Drawing.Point(72, 200) Me.Label2.Name = "Label2" Me.Label2.RightToLeft = System.Windows.Forms.RightToLeft.No Me.Label2.Size = New System.Drawing.Size(184, 33) Me.Label2.TabIndex = 7 Me.Label2.Text = "《ユーザ一覧》" ' 'Label1 ' Me.Label1.BackColor = System.Drawing.Color.FromArgb(CType(192, Byte), CType(255, Byte), CType(192, Byte)) Me.Label1.Cursor = System.Windows.Forms.Cursors.Default Me.Label1.Font = New System.Drawing.Font("MS Pゴシック", 20.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(128, Byte)) Me.Label1.ForeColor = System.Drawing.SystemColors.ControlText Me.Label1.Location = New System.Drawing.Point(208, 32) Me.Label1.Name = "Label1" Me.Label1.RightToLeft = System.Windows.Forms.RightToLeft.No Me.Label1.Size = New System.Drawing.Size(216, 33) Me.Label1.TabIndex = 6 Me.Label1.Text = "《管理項目一覧》" ' 'Form1 ' Me.AutoScaleBaseSize = New System.Drawing.Size(10, 21) Me.BackColor = System.Drawing.Color.FromArgb(CType(192, Byte), CType(255, Byte), CType(192, Byte)) Me.ClientSize = New System.Drawing.Size(554, 426) Me.Controls.Add(Me.Command3) Me.Controls.Add(Me.File1) Me.Controls.Add(Me.Command2) Me.Controls.Add(Me.List1) Me.Controls.Add(Me.Command1) Me.Controls.Add(Me.Label2) Me.Controls.Add(Me.Label1) Me.Cursor = System.Windows.Forms.Cursors.Default Me.Font = New System.Drawing.Font("MS Pゴシック", 15.75!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(128, Byte)) Me.Location = New System.Drawing.Point(44, 23) Me.Name = "Form1" Me.RightToLeft = System.Windows.Forms.RightToLeft.No Me.StartPosition = System.Windows.Forms.FormStartPosition.Manual
Me.Text = "SMDB" Me.ResumeLayout(False)
End Sub #End Region #Region "アップグレード ウィザードのサポート コード" Private Shared m_vb6FormDefInstance As Form1 Private Shared m_InitializingDefInstance As Boolean Public Shared Property DefInstance() As Form1 Get If m_vb6FormDefInstance Is Nothing OrElse m_vb6FormDefInstance.IsDisposed Then m_InitializingDefInstance = True m_vb6FormDefInstance = New Form1() m_InitializingDefInstance = False End If DefInstance = m_vb6FormDefInstance End Get Set m_vb6FormDefInstance = Value End Set End Property #End Region
Private Sub Command1_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command1.Click Dim Fso As New Scripting.FileSystemObject With List1 .Items.Clear() .Visible = False End With 'Call sFolderSearch(Fso.GetFolder("\\Mts0301\data03\120\123\sm03\smgyoumu03&qu ot;)) Call sFolderSearch(Fso.GetFolder("C:\Documents and Settings\Administrator\デス クトッ プ\smgyoumu")) '自フォルダーを含める場合 'List1.AddItem "C:\Documents and Settings\YPCS_NO1\My Documents"
List1.Visible = True End Sub Private Sub sFolderSearch(ByRef myFolder As Scripting.Folder) Dim mySubFolder As Scripting.Folder With myFolder If .SubFolders.Count > 0 Then For Each mySubFolder In .SubFolders List1.Items.Add(mySubFolder.Path) Call sFolderSearch(mySubFolder) Next mySubFolder End If End With End Sub
Private Sub Command2_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command2.Click If MsgBox("終了しますか?", MsgBoxStyle.Question + MsgBoxStyle.Yes No, "終 了") = MsgBoxResult.No Then 'text2.SetFocus Else Me.Close() End If
End Sub
Private Sub Command3_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command3.Click '思い通りの操作ができるまで下記のエラー処理は実行しない事 On Error Resume Next Dim xlApp As Excel.Application Dim xlBook As Excel.Workbook Dim xlSheet As Excel.Worksheet Dim xlFileName As String xlFileName = List1.Text & "\" & File1.FileName 'ファイルが見つからない場合 'UPGRADE_WARNING: Dir に新しい動作が指定されています。 詳細については次のリ ン クをクリックしてください : 'ms-help://MS.VSCC.2003/commoner/redir/redirect.htm? keyword="vbup1041"' If Len(Dir(xlFileName)) = 0 Then Exit Sub
xlApp = CreateObject("Excel.Application") xlBook = xlApp.Workbooks.Open(xlFileName) xlSheet = xlBook.Worksheets(1)
xlApp.Visible = True
'終了処理 ' xlApp.Quit 'UPGRADE_NOTE: オブジェクト xlSheet をガベージ コレクトするまでこのオブジェ ク トを破棄することはできません。 詳細については次のリンクをクリックしてください : 'ms- help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1029"' xlSheet = Nothing 'UPGRADE_NOTE: オブジェクト xlBook をガベージ コレクトするまでこのオブジェク トを破棄することはできません。 詳細については次のリンクをクリックしてください : 'ms- help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1029"' xlBook = Nothing 'UPGRADE_NOTE: オブジェクト xlApp をガベージ コレクトするまでこのオブジェク ト を破棄することはできません。 詳細については次のリンクをクリックしてください : 'ms- help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1029"' xlApp = Nothing
End Sub
Private Sub Command4_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) On Error Resume Next 'UPGRADE_WARNING: 配列 myFilename の下限が 1 から 0 に変更されました。 詳細について は次 のリンクをクリックしてください : 'ms-help://MS.VSCC.2003/commoner/redir/redirect.htm? keyword="vbup1033"' Dim myFilename(16) As String Dim myfile As String 'エラーのトラップを留保します。 'myFilename = "C:\Temp.xls" myFilename(1) = "\\Mts0301\data03\120\123\sm03\smgyoumu03\smplan\七十七銀行.xl s" 'ファイルが存在するか調べる 'UPGRADE_WARNING: Dir に新しい動作が指定されています。 詳細については次のリンクをク リッ クしてください : 'ms-help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1041 "' myfile = Dir(myFilename(1)) 'UPGRADE_WARNING: Dir に新しい動作が指定されています。 詳細については次のリンクをク リッ クしてください : 'ms-help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1041 "' If Len(myfile) = 0 Then MsgBox("そのファイルは存在しません。") Else 'ファイルがあればファイルの名前を同じ名前で変更します。 Rename(myFilename(1), myFilename(1)) 'ファイルが使用中であればエラーが発生します If Err.Number Then MsgBox("ファイルは使用中です。") 'エラーが発生した場合は Err オブジェクトをクリアします。 Err.Clear() If MsgBox("終了しますか?", MsgBoxStyle.Question + MsgBoxStyle.Ye sNo, "終 了") = MsgBoxResult.No Then
Else Me.Close() Exit Sub End If Else MsgBox("ファイルは使われていません。") End If End If
'この状態で起動した場合マクロの警告は表示されません。 Dim xlApp As Excel.Application Dim xlBook As Excel.Workbook Dim xlSheet As Excel.Worksheet Dim kamiki As String
xlApp = CreateObject("Excel.Application") xlBook = xlApp.Workbooks.Open("C:\Documents and Settings\m206770a\デスクトップ \四半期 まとめtst2.xls") xlSheet = xlBook.Worksheets("kamiki")
'Excel のセルに値を代入します。
ExcelGlobal_definst.Range("C4").Select() ExcelGlobal_definst.ActiveCell.FormulaR1C1 = "=SUM('\\Mts0301\data03\120\123\s m03 \smgyoumu03\smplan\[七十七銀行.xls]Sheet1'!R4C24:R6C24)" ExcelGlobal_definst.Range("D4").Select() ExcelGlobal_definst.ActiveCell.FormulaR1C1 = "=SUM('\\Mts0301\data03\120\123\s m03 \smgyoumu03\smplan\[七十七銀行.xls]Sheet1'!R7C24:R8C24)" ExcelGlobal_definst.Range("E4").Select() ExcelGlobal_definst.ActiveCell.FormulaR1C1 = "=SUM('\\Mts0301\data03\120\123\s m03 \smgyoumu03\smplan\[七十七銀行.xls]Sheet1'!R9C24:R10C24)" ExcelGlobal_definst.Range("F4").Select() ExcelGlobal_definst.ActiveCell.FormulaR1C1 = "=SUM('\\Mts0301\data03\120\123\s m03 \smgyoumu03\smplan\[七十七銀行.xls]Sheet1'!R11C24:R13C24)" ExcelGlobal_definst.Range("G4").Select() ExcelGlobal_definst.ActiveCell.FormulaR1C1 = "=SUM('\\Mts0301\data03\120\123\s m03 \smgyoumu03\smplan\[七十七銀行.xls]Sheet1'!R14C24:R16C24)" ExcelGlobal_definst.Range("H4").Select() ExcelGlobal_definst.ActiveCell.FormulaR1C1 = "=SUM('\\Mts0301\data03\120\123\s m03 \smgyoumu03\smplan\[七十七銀行.xls]Sheet1'!R17C24:R20C24)" ExcelGlobal_definst.Range("I4").Select() ExcelGlobal_definst.ActiveCell.FormulaR1C1 = "=SUM('\\Mts0301\data03\120\123\s m03 \smgyoumu03\smplan\[七十七銀行.xls]Sheet1'!R21C24:R23C24)" ExcelGlobal_definst.Range("J4").Select() ExcelGlobal_definst.ActiveCell.FormulaR1C1 = "=SUM('\\Mts0301\data03\120\123\s m03 \smgyoumu03\smplan\[七十七銀行.xls]Sheet1'!R24C24:R25C24)" ExcelGlobal_definst.Range("K4").Select() ExcelGlobal_definst.ActiveCell.FormulaR1C1 = "=SUM('\\Mts0301\data03\120\123\s m03 \smgyoumu03\smplan\[七十七銀行.xls]Sheet1'!R26C24:R27C24)" ExcelGlobal_definst.Range("L4").Select() ExcelGlobal_definst.ActiveCell.FormulaR1C1 = "=SUM('\\Mts0301\data03\120\123\s m03 \smgyoumu03\smplan\[七十七銀行.xls]Sheet1'!R28C24:R30C24)" ExcelGlobal_definst.Range("M4").Select() ExcelGlobal_definst.ActiveCell.FormulaR1C1 = "=SUM('\\Mts0301\data03\120\123\s m03 \smgyoumu03\smplan\[七十七銀行.xls]Sheet1'!R31C24:R32C24)" ExcelGlobal_definst.Range("N4").Select() ExcelGlobal_definst.ActiveCell.FormulaR1C1 = "=SUM('\\Mts0301\data03\120\123\s m03 \smgyoumu03\smplan\[七十七銀行.xls]Sheet1'!R33C24:R35C24)" ExcelGlobal_definst.Application.WindowState = Excel.XlWindowState.xlNormal ExcelGlobal_definst.Application.Left = 54.25 ExcelGlobal_definst.Application.Top = -9.5 ExcelGlobal_definst.Application.Width = 547.5 ExcelGlobal_definst.Application.Height = 442.5 ExcelGlobal_definst.Windows.Arrange(ArrangeStyle:=Excel.Constants.xlTiled) ExcelGlobal_definst.Windows("四半期まとめtst2.xls").Activate() ExcelGlobal_definst.ActiveWindow.SmallScroll(ToRight:=-3) ExcelGlobal_definst.Application.WindowState = Excel.XlWindowState.xlNormal
'xlApp.Visible = True ' Trueはexcelを表示させる
'標準モジュール内に記入されている場合 'xlApp.Run ("Macro2") 'xlApp.Visible = True 'ここでExcelを表示させ、Excelで終了させるので、xlApp.Run ("Macro2")のモジュールエラーがでなくなった xlApp.DisplayAlerts = False 'いちいち保存確認をきてくるので、表示させない xlSheet.SaveAs("C:\Documents and Settings\m206770a\デスクトップ\四半期まとめ tst2.xls") 'ファイルを保存 MsgBox("完了") xlApp.Visible = True 'xlApp.Quit '終了処理(saveコマンドをいれないと保存されない) Reset() 'UPGRADE_NOTE: オブジェクト xlApp をガベージ コレクトするまでこのオブジェクトを破棄 する ことはできません。 詳細については次のリンクをクリックしてください : 'ms- help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1029"' xlApp = Nothing 'UPGRADE_NOTE: オブジェクト xlBook をガベージ コレクトするまでこのオブジェクトを破 棄する ことはできません。 詳細については次のリンクをクリックしてください : 'ms- help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1029"' xlBook = Nothing 'UPGRADE_NOTE: オブジェクト xlSheet をガベージ コレクトするまでこのオブジェクトを破 棄す ることはできません。 詳細については次のリンクをクリックしてください : 'ms- help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1029"' xlSheet = Nothing
'xlApp.Visible = True ' Trueはexcelを表示させる '1.マクロの警告が表示 'Set myXlsApp = CerateObject("Excel.application") 'Set myXlsBook = GetObject("エクセルファイルのPATH")
End Sub
Private Sub Form1_Load(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles MyBase.Load '存在しない拡張子を指定 File1.Pattern = "abcde"
End Sub
'UPGRADE_WARNING: イベント List1.SelectedIndexChanged は、フォームが初期化されたときに 発生 します。 詳細については次のリンクをクリックしてください : 'ms- help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup2075"' Private Sub List1_SelectedIndexChanged(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles List1.SelectedIndexChanged '表示したいファイルの拡張子を指定 File1.Pattern = "*.XLS;*.CSV" File1.Path = List1.Text
End Sub
Private Sub File1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles File1.SelectedIndexChanged
End Sub End Class
|