我试图让我的电子表格在插入新行时自动采用以前的行格式和公式。
我读过您可以在哪里设置工作表以在进行更改时自动运行代码,但是我很难让代码正常工作。
我尝试了以下操作,每次插入新行时,它都会不断添加一行,直到出现错误并且我必须强制退出:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Range("A1:D25") = ActiveCell.EntireRow.Insert Then
Cells(1, 2).Value = 10
End If
End Sub
Run Code Online (Sandbox Code Playgroud)
我添加了Cell Value = 10看看它是否有效。这只是一个测试,但它仍然失败。
有谁知道可能的解决方案?
在我的工作簿中,我使用以下代码保护 Workbook_Open 上的所有工作表:
ws.Protect Password:="password", UserInterFaceOnly:=True, _
AllowFormattingColumns:=True, AllowFormattingRows:=True, _
AllowInsertingColumns:=True, AllowInsertingRows:=True, _
AllowDeletingColumns:=True, AllowDeletingRows:=True
Run Code Online (Sandbox Code Playgroud)
在最后一行中,我专门打开了AllowDeletingRows 以允许用户删除行。插入行效果很好,但如果我尝试删除受保护工作表上的行,Excel 会告诉我无法删除包含锁定单元格的行。有谁知道如何让AllowDeletingRows正常工作?
我正在尝试通过openpyxl访问桌面上的excel文件。我正在创建这样的文件名load_workbook:
import os
folderpath = r'C:\Users\SomeUser\Desktop'
add = 'Expense-Tracking ' + str(year) + '.xlsx' # year is 2019
filename = os.path.join(folderpath, add)
Run Code Online (Sandbox Code Playgroud)
然后,当我尝试用来filename加载工作簿时,出现此错误:
FileNotFoundError:[错误2]没有此类文件或目录:'C:\\ Users \\ SomeUser \\ Desktop \\ Expense-Tracking 2019.xlsx'
为什么将单斜杠更改为双斜杠,我该怎么做才能避免呢?
我期望的字符串是:
'C:\ Users \ SomeUser \ Desktop \ Expense-Tracking 2019.xlsx'