[CDR X5-X8] Нужна помощь в создании кода для кнопки макроса

splxgf

12 лет на форуме
Сообщения
7 740
Реакции
3 421
Ну я с запасом сделал оба, я ж не знаю какой именно символ станок воспринимает как разделитель или сразу все
Оба зачастую нормально воспринимаются, но важен порядок, обычно CR+LF.
 

elshad66

Участник
Топикстартер
Сообщения
53
Реакции
0
Всем привет,всем крепкого здоровья и всех благ.
lev, splxgf, _MBK_, dastin .Вы мне помогли создать этот код для кнопки .Огромное Спасибо Вам
Я создал еще кнопку,для котор нужен код для открытия папки C:\CDR2Mill ,с последующим выбора файла ,
содержимое которого вставить в окошко макроса TextCode


Код:
Private Sub ComButImportgcode_Click() 'импортирует содержимое
Dim gcode
Dim s
Dim ss
gcode = "C:\CDR2Mill\CDR2Mill.gcode"
  Open gcode For Input As #1
  Do While Not EOF(1)
    Line Input #1, s
    ss = ss & Chr(10) & Chr(13) & s
  Loop
  Close #1
  TextCode = ss
End Sub

Гугл подкинул этот сайт, клик но эти макросы для экзел ,или их как то можно подружить с корел,
отредактировать и объединить с кодом выше,чтоб вставить в кнопку, файлы будут с расширением
.gcode .nc . gc
Спасибо за помощь
 

Вложения

  • bandicam 2021-07-31 .jpg
    bandicam 2021-07-31 .jpg
    304.8 КБ · Просм.: 130

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835
Не пойму сути вопроса - на уровне исходников .bas они вполне совместимы (разумеется, с поправкой на обьектную модель)
 

elshad66

Участник
Топикстартер
Сообщения
53
Реакции
0
спасибо что отозвались, ну я не бум бум , какой выбрать и как объеденить
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835
Что выбрать и с чем обьединить???? %8
 

elshad66

Участник
Топикстартер
Сообщения
53
Реакции
0
ну на том сайте есть разные варианты кодов ,а обьединить нужно с кодом выше
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835
Вы можете конкретно написать что именно вам надо???? Я честно говоря, подзабыл уже что вам надо было изначально, а теперь вообще суть хотелки не пойму. Из эксела вы кореловский макрос запустить можете путем кучи дополнительных телодвижений, то же самое и наоборот. Но для начала надо понять суть задачи.
 

elshad66

Участник
Топикстартер
Сообщения
53
Реакции
0
вот автор пишет

Ещё один вариант кода (который я использую) для выбора файла
Его отличие - функция запоминает папку, из которой последний раз выбирался файл,
и при повторном запуске диалогового окна выбора файла,
обзор папок будет начат с той папки, откуда последний раз был взят файл.

Код:
Sub AttachFile_test()    ' пример использования
    Filename$ = GetFilePath()
    If Filename$ = "" Then Exit Sub
    MsgBox "Выбран файл: " & Filename$
End Sub
 
Function GetFilePath(Optional ByVal Title As String = "Выберите файл для обработки", _
                     Optional ByVal InitialPath As String = "c:\", _
                     Optional ByVal FilterDescription As String = "Файлы счетов", _
                     Optional ByVal FilterExtention As String = "*.*") As String
    On Error Resume Next
    With Application.FileDialog(msoFileDialogOpen)
        .ButtonName = "Выбрать": .Title = Title:
        .InitialFileName = GetSetting(Application.Name, "GetFilePath", "folder", InitialPath)
        .Filters.Clear: .Filters.Add FilterDescription, FilterExtention
        If .Show <> -1 Then Exit Function
        GetFilePath = .SelectedItems(1)
        folder$ = Left(.SelectedItems(1), InStrRev(.SelectedItems(1), "\"))
        SaveSetting Application.Name, "GetFilePath", "folder", folder$
    End With
End Function
 

elshad66

Участник
Топикстартер
Сообщения
53
Реакции
0
ок,, изначально мне надо было создать код чтод при клике на кнопке макроса содержимое текстого файла из папки C:\CDR2Mill попало в окошко макроса ,,вы помогли сделать код и он работает код этот
Код:
Private Sub ComButImportgcode_Click() 'импортирует содержимое
Dim gcode
Dim s
Dim ss
gcode = "C:\CDR2Mill\CDR2Mill.gcode"
  Open gcode For Input As #1
  Do While Not EOF(1)
    Line Input #1, s
    ss = ss & Chr(10) & Chr(13) & s
  Loop
  Close #1
  TextCode = ss
End Sub
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835
А в кореловской модели у Application разве есть метод FileDialog?
 

elshad66

Участник
Топикстартер
Сообщения
53
Реакции
0
щяс я создал еще одну кнопку в макросе чтоб при клике открывалась папка C:\CDR2Mill, а потом яб выбрал нужный файл и он открылся в окошке макроса
 
Последнее редактирование:

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835
Ну так и в чем проблема?
 

elshad66

Участник
Топикстартер
Сообщения
53
Реакции
0
т,е нужен код открытия папки + выбор файла + открытия содержимого в окошке макроса
 

elshad66

Участник
Топикстартер
Сообщения
53
Реакции
0
проблема в том что я не бум бум как это сделать 'fp' я только кнопку создал без кода выполнения
 
Последнее редактирование:

dastin

Некромант-любитель
12 лет на форуме
Сообщения
2 131
Реакции
2 027
код открытия папки + выбор файла
GetFileBox
Код:
Dim path As String
'Set the current folder (may not take effect, the author did not find the reason)
SETCURRFOLDER = "D:\document"
'Call the file open dialog
path = CorelScriptTools.GetFileBox("Text file type|*.txt|All file types|*.*", "Please select a file", 0, "default file name")

gcode = path
 

elshad66

Участник
Топикстартер
Сообщения
53
Реакции
0
спасибо что отзвалься ,при клике на кнопку выходит ошибка
 

Вложения

  • bandicam 2021-07-31 18-23-38-515.jpg
    bandicam 2021-07-31 18-23-38-515.jpg
    252.2 КБ · Просм.: 114

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835
Отключите option explicit хотя да согласен плохому учу но так всем нам будет проще
 

dastin

Некромант-любитель
12 лет на форуме
Сообщения
2 131
Реакции
2 027
Или напишите
Dim SETCURFOLDER
или
поставьте перед SETCURFOLDER знак [']
или
удалите эту строку
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835
Или напишите
Dim SETCURFOLDER
или
поставьте перед SETCURFOLDER знак [']
или
удалите эту строку
И кстати а какой смысл в присвоении пути локальной переменной path которая нигде не используется?
 

elshad66

Участник
Топикстартер
Сообщения
53
Реакции
0
отключил option explicit ,сработала кнопка но открывает только папку gms ,а если перейти в папку C:\CDR2Mill, то она пуста