我想问一下,如果有一个Excel宏或vba自动获取文件名,例如D01Q12013,然后将三个新列(区,季,年)添加到前十三列中包含现有数据的表中,并根据文件名(区 - 01,季 - 1,年 - 2013)填充三个新列?如何填写基于文件名的excel名称
0
A
回答
1
下面应该让你开始:
Sub GetName()
Range("A1").Value = ThisWorkbook.Name
Range("A2").Value = "District - " & Mid(ThisWorkbook.Name, 2, 2)
Range("A3").Value = "Quarter - " & Mid(ThisWorkbook.Name, 5, 1)
Range("A4").Value = "Year - " & Mid(ThisWorkbook.Name, 6, 4)
End Sub
两个关键要素在这里:
- ThisWorkbook.Name =给出该代码所在的工作簿的名称。您也可以使用“ActiveWorkbook.Name”来获取活动工作簿的名称。
Mid =允许您提取一段文本(如工作簿的文件名)。使用此函数的格式是:
MID(text_to_extract_from,START_POSITION,NUMBER_OF_CHARACTERS)
太行 “范围(” A4" )值=。 “年 - ” & MID(ThisWorkbook.Name ,6,4)“将单元格A4的值设置为以”年 - “开头的短语,然后使用从代码所在工作簿的文件名的第六个字符开始的四个字符。
使用这些元素和宏录制器,您应该能够实现插入包含部分文件名的新列的目标。
+0
明白了,它的工作。现在进入解决方案的其余部分。谢谢!:) – Nico
相关问题
- 1. 删除基于名称的文件夹
- 2. 基于名称
- 3. 基于名称
- 4. 基于名称
- 5. 基于文件名/ cfg文件/属性名称的动态URI
- 6. 基于文件名的文件夹名称
- 7. 基于文件夹中已有的名称创建名称为
- 8. 基于名称填充下拉列表
- 9. 基于网页名称的HTAccess重写?
- 10. 基于文件存在与其他名称的重写规则
- 11. 基于Tab名称打开文件?
- 12. 基于名称删除文件
- 13. 基于文件名
- 14. 如何在Excel 2010中隐藏基于名称的列?
- 15. 基于列名不是单元名称的Excel查找数据
- 16. 名称基于缩略表名称
- 17. 的R - 如何基于grepping行名称
- 18. 基本MVC路由:/文件夹名称/文件夹名称/控制器名称
- 19. 基于表名的Concatinate SEQUENCE/TRIGGER名称
- 20. 如何在SQL Server 2008中基于名称,企业名称,大学名称编写搜索存储过程
- 21. 如何基于WSDL文件构建SOAP标题名称空间
- 22. 基于excel中的变量文件名VBA打开文件
- 23. excel vba基于单调递增的名称打开文件和复制文档
- 24. 如何填写基于Environment.ProcessorCount
- 25. 基于名称的C#显示组件
- 26. 基于属性名称的AutoMapper条件
- 27. MSBUild:使用基于原始文件的名称复制文件
- 28. 忽略基于项目文件夹名称的文件
- 29. 基于名称将文件移动到相应的文件夹
- 30. 保存PDF文档的名称基于文件中的文本
您的问题的答案是一个很大的是。可以使用DIR函数和其他字符串操作函数(Mid,len,left,right等)来获得你想要的。 – L42