投稿日 | : 2003/10/30(Thu) 15:13 |
投稿者 | : 龍 |
URL | : |
タイトル | : csvファイルをexcelに表示するには? |
はじめまして。
初心者です。
csvファイルをxlsに色々と編集した状態で表示したいのですが、
1度、下記のコードをある方に頂いたのですが、うまく行きません。
しかも、追加で頂いたコードをどこかに無くしてしまいました。
もし、下記のコードの続き、または修正がお分かりになる方、
ご指導よろしくお願いいたします。
Private m_xlAp As Excel.Application
Public Property Get xlAp() As Excel.Application
Dim sTest As String
On Error Resume Next
'すでにExcelを取得していれば、それがまだ有効であることを確認して返す。
If Not (m_xlAp Is Nothing) Then
sTest = m_xlAp.Name
If Err.Number = 0 Then
Set xlAp = m_xlAp
Exit Property
End If
End If
'開いているExcelがあれば、それを取得して返す。
Set m_xlAp = GetObject(, "Excel.Application")
If Not (m_xlAp Is Nothing) Then
Set xlAp = m_xlAp
Exit Property
End If
'Excelを新規に立ち上げて返す。
Set m_xlAp = CreateObject("Excel.Application")
m_xlAp.Visible = True
Set xlAp = m_xlAp
End Property
Private Sub Command1_Click()
Dim xlAp As Excel.Application
Dim wbOther As Excel.Workbook, wsOther As Excel.Worksheet
Dim wbMonth As Excel.Workbook, wsMonth As Excel.Worksheet
Dim celFound As Range
Set wbOther = xlAp.Workbooks.Open("C:\other.xls")
Set wbMonth = xlAp.Workbooks.Open(App.Path & "\test01.xls")
'シート取得。
Set wsOther = wbOther.Worksheets("Sheet1")
Set wsMonth = wbMonth.Worksheets("Sheet1")
'まずは検索。
With wsMonth
'A列(第1列)から、"Aug"のみ抽出(オートフィルタ)。
.UsedRange.AutoFilter Field:=1, Criteria1:="Aug"
'抽出結果から、検索。
'見つからなければ終了。
Set celFound = Range("E・E").Find(What:="AAA", _
After:=.Range("E1"), _
LookIn:=xlValues, LookAt:=xlPart, _
SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
MatchCase:=False, MatchByte:=False, SearchFormat:=False)
If celFound Is Nothing Then Exit Sub
End With
'セット。
With wsOther
Select Case .Range("A1")
Case "8月": .Range("B2") = celFound.Offset(0, 1)
Case "9月": .Range("C2") = celFound.Offset(0, 1)
End Select
End With
End Sub