2012-02-20 2 views
1

Я обязан создать пользовательскую форму, как в картинеформы, чтобы открыть текстовый файл для просмотра в Excel

enter image description here

Мне нужно открыть файл с расширением .txt из excel, используя VBA, а также кнопку.

После выбора файла, когда я нажму, он откроет файл.

Мне дали некоторые коды, сделанные ранее, но не работали.

оценят, если кто-то может мне помочь. Благодаря!

Public Sub CommandButton1_Click() 
Unload Me 'Cancellation command 
End Sub 


Private Sub CommandButton2_Click() 
'start button 
    Application.ScreenUpdating = False 

    Sheets("Summary").Select 

    Call Transposer("Summary Transpose") 

    Sheets("Failing Patterns").Select 

    Call Transposer("Failing Patterns Transpose") 

    Me.Status = "Status: Finished" 

    Me.Error = "" 

    'Make sure the screen updates before the end 


    Application.ScreenUpdating = True 


End Sub 


Public Sub Label1_Click() 

End Sub 

Private Sub testFinder_Click() 

    Me.testDirectory.Value = Application.GetOpenFilename 

End Sub 

Public Sub UserForm_Click() 

End Sub 

ответ

1

Чтобы выбрать текстовый файл поместить этот код в testFinder_Click()

Private Sub testFinder_Click() 
    Dim fileToOpen 

    fileToOpen = Application _ 
    .GetOpenFilename("Text Files (*.txt), *.txt") 

    If fileToOpen = False Then Exit Sub 

    testDirectory.Value = fileToOpen 
End Sub 

Чтобы открыть текстовый файл, вы можете использовать этот код.

Private Sub CommandButton2_Click() 
    ' 
    '~~> Rest of Code 
    ' 
    Workbooks.OpenText Filename:=testDirectory.Value, Origin:=437, _ 
    StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _ 
    ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:=False _ 
    , Space:=False, Other:=False, FieldInfo:=Array(1, 1), TrailingMinusNumbers:=True 
    ' 
    '~~> Rest of Code 
    ' 
End Sub 
+0

Я имею в виду ваш Transposer() и другой код, который у вас есть выше. –

+0

Я не очень уверен, что вы подразумеваете под «остальной частью кода» во 2-й части ... и есть ошибка времени выполнения 424, и она показала ошибку в testDirectory.Value ... – user1204868

+0

Как называется текстовое поле? Разве это не «testDirectory»? –

Смежные вопросы