创建以包含其他单元格数据的单元格命名的文本文件

创建以包含其他单元格数据的单元格命名的文本文件

我尝试在使用 OS X 版本 10.7.2 的 Mac Mini 上的 Excel 程序中使用以下代码,但它一直显示由于文件名/路径而导致的错误:(我正在创建的 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. 我想要使​​用以下数据来创建文本文件。A:A 是我需要的文件名。B:2 是我在文本文件中需要的内容。

    因此,A2 - “repair-video-game-Glassboro-NJ-08028.txt”是文件名,B2 是文件内容。接下来,A3 是文件名,B3 是文件内容,等等。一旦内容读取单元格 A16 和 B16 中的内容(长度会有所不同),文件创建应该会停止,如果没有,那么我可以删除创建的其他文件。

  2. 此工作表永远不会改变。有没有办法建立 excel 宏以始终转到此工作表,而不必使用鼠标选择它来识别起点?

第二个目标

  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 个字符。

相关内容