Макрос работает пошагово, но не использует горячие клавиши - PullRequest
0 голосов
/ 10 июля 2019

У меня относительно простой макрос. Он принимает выбранный пользователем текстовый файл и использует разделители фиксированной ширины, чтобы разрезать его на столбцы, которые всегда одинаковы. Моя проблема в том, что когда я запускаю свой макрос, выбранный файл открывается, однако он не выполняет преобразование текста в столбцы.

Он будет выполнять это всякий раз, когда вы проходите макрос. Это также работает, когда вы используете макрос в одном и том же файле дважды подряд.

Sub Historical()

With Application.FileDialog(msoFileDialogFilePicker)
        'Only one file
        .AllowMultiSelect = False
        'Add filters
        .Filters.Add "All", "*.*"
        'Show the dialog box
        .Show

        'Store in fullpath variable
        fullpath = .SelectedItems.Item(1)
End With

Dim WrkBk As Workbook
Dim WrkSht As Worksheet
Dim sheetname As String

Set WrkBk = Workbooks.Open(fullpath)

'Code stops here. The file will open but nothing below happens. I tried adding a wait.
Application.Wait (Now + TimeValue("0:00:02"))

Columns("A:A").Select

Selection.TextToColumns Destination:=Range("A1"), DataType:=xlFixedWidth, _
        FieldInfo:=Array(Array(0, 9), Array(14, 1), Array(17, 9), Array(18, 1), Array(23, 9), _
        Array(24, 1), Array(30, 1), Array(62, 1), Array(72, 1), Array(84, 1), Array(94, 1), Array( _
        118, 1)), TrailingMinusNumbers:=True

End Sub

1 Ответ

0 голосов
/ 10 июля 2019

Разобрался. Это было потому, что я использовал клавишу Shift в горячей клавише для макроса, который вызывал проблемы с командой Workbooks.Open.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...