Создать текстовый файл с именем ячейки, содержащий данные других ячеек

Создать текстовый файл с именем ячейки, содержащий данные других ячеек

Я попробовал использовать приведенный ниже код для программы Excel на моем Mac Mini с OS X версии 10.7.2, но он постоянно выдает ошибку из-за имени файла или пути:(Файл Excel, который я создам, будет шаблоном с установленными формулами и макросами, который будет использоваться снова и снова).

Sub CreateFile()
Do While Not IsEmpty(ActiveCell.Offset(0, 1))
    MyFile = ActiveCell.Value & ".txt"
    fnum = FreeFile()
    Open MyFile For Output As fnum
    Print #fnum, ActiveCell.Offset(0, 1) & " " & ActiveCell.Offset(0, 2)
Close #fnum
ActiveCell.Offset(1, 0).Select
Loop
End Sub

Что я пытаюсь сделать:

1-я цель

  1. Я хотел бы использовать следующие данные для создания текстового файла. A:A — это имя файла, которое мне нужно. B:2 — это содержимое, которое мне нужно в текстовом файле.

    Итак, A2 - "repair-video-game-Glassboro-NJ-08028.txt" - это имя файла, а B2 - это содержимое в файле. Далее, A3 - это имя файла, а B3 - это содержимое файла и т. д. КАК ТОЛЬКО содержимое прочитает то, что находится в ячейках A16 и B16 (длина будет разной), создание файла должно прекратиться, если нет, то я могу удалить дополнительно созданные файлы.

  2. Этот лист никогда не изменится. Есть ли способ настроить макрос Excel, чтобы он всегда переходил на этот лист, а не выбирал его мышью, чтобы определить начальную точку?

2-я цель

  1. Я хотел бы использовать следующие данные для создания текстового файла. A:1 — это имя файла, которое мне нужно. B:B — это содержимое, которое мне нужно в файле.

    Итак, A2 - это имя файла "geo-sitemap.xml", а B:B - это содержимое в файле (не обращайте внимания на расширение файла .xml на фотографии). КАК ТОЛЬКО ячейка содержимого прочитает то, что находится в ячейке "B16" (длина будет меняться), создание файла должно прекратиться, если нет, то я могу настроить ячейки, в которых есть необходимое содержимое (сформулированное содержимое, которое вы видите на изображении, задано для 500 строк).

  2. Этот лист никогда не изменится. Есть ли способ настроить макрос Excel, чтобы он всегда переходил на этот лист, а не выбирал его мышью, чтобы определить начальную точку?

Я могу предоставить содержимое ячеек, заполненных формулами Excel, которые не подлежат включению в файлы .txt.Ничего страшного, если это невозможно. Я могу удалить лишние ячейки, которые не заполнены (на основе листа данных).

Если вам понадобится дополнительная информация или разъяснения, сообщите мне, и я с радостью ее предоставлю.

решение1

Итак, вот код, который я использую. Он настроен на запуск с любой страницы (то есть вам не обязательно находиться на странице, установите страницу в коде)

Sub CreateFile_KML()

Dim shtKML As Worksheet

Set shtKML = ThisWorkbook.Sheets("KML")

i = 2

    Do While Not IsEmpty(shtKML.Cells(i, 2))
        MyFile = "Macintosh HD:Users:cherryredspyder:Desktop:Testting:" & shtKML.Cells(i, 1).Value
        fnum = FreeFile
        Open MyFile For Output As fnum
        Print #fnum, shtKML.Cells(i, 2).Value
        Close fnum
        i = i + 1
    Loop

End Sub

Длина файла не должна превышать 32 символа.

Связанный контент