Wps excel格式转化 宏代码?

*目前还没解决???
统计过的数据,需要分类,有没有办法自动抽取带C列里含有A的前一个单元格。效果图希望能像图里所示。麻烦了。请大神帮帮忙··麻烦用JS宏格式(不懂就不要装懂啊,使用AI自动生成代码,那个不管用的。谢谢)
最新回答
我萌怪我咯

2024-10-03 14:15:42

以下是将 WPS Excel 文件转换为 Excel 格式的宏代码:
Sub SaveAsExcel()

Dim TargetFile As String
Dim objWkb As Workbook
Dim objApp As Object

Set objWkb = ActiveWorkbook
Set objApp = CreateObject("Excel.Application")

If objWkb Is Nothing Or objApp Is Nothing Then
MsgBox "程序出错!"
Exit Sub
End If

With objApp
.Visible = False
.Workbooks.Add
Set objWkb = .Workbooks.Open(objWkb.FullName)
TargetFile = Replace(objWkb.FullName, ".et", ".xlsx")
Application.DisplayAlerts = False
objWkb.SaveAs TargetFile, FileFormat:=xlOpenXMLWorkbook
.Quit
End With

MsgBox "保存成功!"
End Sub
使用方法:
1.打开一个 WPS Excel 文件。
2.按下 ALT + F11 进入 VBA 界面。
3.在左侧 Project 窗口中找到当前文件所在的 VBAProject。
4.右键单击 VBAProject,选择 Insert -> Module,即可打开一个新的 VBA 代码模块。
5.将以上代码复制到新的模块中,并保存。
6.返回 WPS Excel 界面,按下 Alt + F8 快捷键调出宏对话框,选择 "SaveAsExcel" 宏执行即可。
请注意,在执行宏代码前最好先备份一份原始文件,以防不测。
献世佛

2024-10-03 05:56:54

以下是一个将WPS Excel格式转换为标准Excel格式的VBA宏代码示例:

Sub ConvertToExcelFormat()

Dim wb As Workbook

Dim strPath As String

Dim fso As Object

Dim objFile As Object

'选择要转换的文件

strPath = Application.GetOpenFilename("WPS Excel Files (*.et;*.ett), *.et;*.ett")

'检查是否选择了文件

If strPath = "False" Then

Exit Sub

End If

'创建文件对象

Set fso = CreateObject("Scripting.FileSystemObject")

Set objFile = fso.GetFile(strPath)

'打开文件

Set wb = Workbooks.Open(strPath)

'保存为Excel格式

wb.SaveAs fso.BuildPath(objFile.ParentFolder, fso.GetBaseName(objFile.Name)) & ".xlsx", FileFormat:=xlOpenXMLWorkbook

'关闭文件

wb.Close False

'释放对象

Set objFile = Nothing

Set fso = Nothing

Set wb = Nothing

MsgBox "文件已成功转换为Excel格式!", vbInformation

End Sub

使用方法:

  • 打开Excel软件,按下Alt+F11打开VBA编辑器;

  • 在编辑器中,点击菜单栏中的“插入”,选择“模块”,在代码窗口中输入以上代码;

  • 关闭VBA编辑器,回到Excel界面,按下Alt+F8,调出宏窗口,选择刚刚创建的“ConvertToExcelFormat”宏并运行;

  • 选择需要转换的WPS Excel文件,点击“确定”,宏将会自动将其转换为标准的Excel格式。

追问
为什么运行宏的时候,需要去选择文件?而且文件类型只能是et/ett格式的?就不能指定原来的文件了。
′荼糜公主﹏

2024-10-03 20:32:10

正在为您搜索:Wps、excel、格式、转化

以下是将 WPS Excel 文件转换成 Microsoft Excel 格式的宏代码:

vbCopy CodeSub SaveAsXLSX()    ' 获取当前文件路径和文件名
Dim fullFileName As String
fullFileName = ActiveWorkbook.FullName
' 将当前文件另存为 Microsoft Excel 格式
ActiveWorkbook.SaveAs Replace(fullFileName, ".et", ".xlsx"), FileFormat:=51End Sub

使用方法:

  • 打开需要转换的 WPS Excel 文件;

  • 按下 Alt + F11,在 Visual Basic 编辑器中打开 VBA 代码窗口;

  • 将以上代码复制到 VBA 编辑器中;

  • 按下 F5,执行代码;

  • 保存并关闭文件。

  • 需要注意的是,由于 WPS Excel 和 Microsoft Excel 之间的差异,可能会有一些格式或功能无法完全转换,需要手动进行调整。

——薇沁萱儿ˇ

2024-10-03 08:08:02

以下是一个基于VBA的宏代码,可以实现自动抽取带有指定文本的前一个单元格,并分类统计数据:

```
Sub ExtractData()
Dim i As Integer
Dim lastRow As Integer
Dim keyword As String
Dim targetSheet As Worksheet
Dim sourceSheet As Worksheet

'设置关键词和目标工作表
keyword = "A"
Set targetSheet = Sheets("统计结果")

'复制源数据工作表
Set sourceSheet = Sheets("源数据")
sourceSheet.Copy After:=targetSheet
Set sourceSheet = ActiveSheet

'获取源数据最后一行
lastRow = sourceSheet.Cells(Rows.Count, "C").End(xlUp).Row

'遍历源数据,抽取数据并分类统计
For i = 2 To lastRow
If InStr(sourceSheet.Cells(i, "C"), keyword) > 0 Then
targetSheet.Cells(i - 1, "A").Copy
targetSheet.Cells(Rows.Count, "B").End(xlUp).Offset(1, 0).Value = keyword
targetSheet.Cells(Rows.Count, "C").End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
End If
Next i

'删除源数据工作表
Application.DisplayAlerts = False
sourceSheet.Delete
Application.DisplayAlerts = True
End Sub
```

使用方法:

1. 打开Excel文件,按下Alt+F11进入VBA编辑器;
2. 在VBA编辑器中,选择要添加宏的工作簿,右键选择“插入”->“模块”,打开一个新模块;
3. 将以上代码复制粘贴到新模块中;
4. 修改代码中的关键词和目标工作表名称,保存并关闭VBA编辑器;
5. 回到Excel界面,按下Alt+F8打开宏窗口,选择刚刚添加的宏,并点击“运行”按钮即可。

注意:在运行宏之前,建议先备份好原始数据,以免操作失误造成数据丢失。
猫吻

2024-10-03 06:08:16

是的,你可以使用Excel中的宏来实现“自动抽取带C列里含有A的前一个单元格”的功能。下面是一个示例VBA代码,你可以根据自己的需要进行修改和调整:
Sub extractData()
Dim i As Integer
Dim str As String
Dim k As Integer
' 循环遍历C列的所有单元格
For i = 1 To Range("C" & Rows.Count).End(xlUp).Row
' 如果该单元格包含关键字A
If InStr(Range("C" & i).Value, "A") > 0 Then
' 获取其前一个单元格的内容并输出到D列
str = Range("C" & i - 1).Value
k = Range("D" & Rows.Count).End(xlUp).Row + 1
Range("D" & k).Value = str
End If
Next i
End Sub
在这个示例代码中,我们通过循环遍历C列的所有单元格,检查每个单元格的内容是否包含关键字A。如果包含,则提取其前一个单元格的内容,并将其输出到D列。
你可以在Excel中按照以下步骤来添加和运行这个宏:
1. 打开Excel文档,按下“Alt+F11”键,打开VBA编辑器。
2. 在VBA编辑器中,单击“插入”菜单,并选择“模块”。
3. 在新建的模块中,将示例代码复制粘贴进去。
4. 保存并关闭VBA编辑器,返回Excel文档。
5. 在Excel文档中,单击“开发工具”菜单,选择“宏”。
6. 在弹出的对话框中,选择你创建的宏名,单击“运行”按钮即可。
注意,使用VBA编写宏需要熟悉一定的编程知识和技巧,如果不熟悉,最好先进行学习和练习。同时,请务必备份好原始数据,以避免误操作导致数据丢失或者不完整。
追问

大神,行不通呀···闪了一下,没反应呀··