在受保护的工作表中,我有一个按钮,可以删除所选单元格的行,而它们是在连贯一致的行中。如果我在不同的行(使用CTRL)中选择两个单元格,这两个单元格不是在相干行中,则会得到一个1004错误。见下面的代码:
Sub LöscheDatensatz()
Application.ScreenUpdating = False
With ActiveSheet
.unprotect Password:="test"
If Cells(Selection.Row, 1).Locked = False Then
Selection.EntireR
我正在尝试编写一个脚本,该脚本动态地在工作表中查找数据(表的大小需要在两个轴上灵活),然后更新另一个工作表上现有图表的源数据范围(这样我的用户就不需要自己设置样式了)。
下面是我的剧本。除了Excel给出错误的最后一行之外,一切都可以正常工作:
“第10行:图表setData:无法执行所请求的操作”
function main(workbook: ExcelScript.Workbook)
{
let selectedSheet = workbook.getWorksheet("Enter data in this sheet");
// Add a new table
我锁定了一个电子表格,这样用户就不能修改单元格值,但我可以运行VBA宏来进行计算。我的代码是这样的:
Private Sub Workbook_Open()
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
ws.Protect "Password", UserInterfaceOnly:=True
Next
Other_function()
End Sub
这可以很好地防止用户修改单元格,但允许此示例工作:
Private Sub CommandButton1_Click()
Worksheets
我使用一个脚本来复制和粘贴一些数据,由几个用户在没有权限的情况下只编辑一行数据,其他的范围受到这些用户的保护。
脚本将数据从一个工作表复制到另一个工作表,这两个工作表都完全受到保护,只有两个编辑器可以编辑任何内容。当没有人使用此电子表格时,此脚本将在基于时间的触发器上触发。
问题是:脚本能够编辑受保护的工作表或范围?
下面是代码(以防万一):
function CopyDaily() {
var ss = SpreadsheetApp.openById('1olKDp').getSheetByName('Produtos vendidos'); //Sele
如果数据被添加到受保护的工作表中,请帮助VBA代码自动调整我的表的大小吗?当工作表被解锁并且我添加数据时,表会自动调整大小,但是当它被锁定时,它不会调整大小以包含添加的任何数据。
目前,我只插入了1行,需要它调整表的大小,以适应添加数据的行数(可以是10行或100行):
Sub ExtendTable()
ActiveSheet.Unprotect Password:="XXXX"
ActiveSheet.ListObjects("PortfolioTracker").ListRows.Add.Range.Locked = False
A
我正在尝试获得第一行号码后,最后一个受保护的范围,谷歌工作表使用应用程序脚本。请注意,我有几个受保护的范围在我的谷歌表。我的代码如下所示,但不起作用?
var protections = sheetm.getProtections(SpreadsheetApp.ProtectionType.RANGE);
var len = protections.length; //last protection
var lastRow = protections[len].getRange().getLastRow();
var desiredRow = lowRow + 1;
我有一个不受保护的工作表(MySheet),其中的表(MyTable)填充了10行。我使用以下代码将带有字符串的行插入到表的末尾:
Sub AddRowToMyTable()
Dim the_sheet As Worksheet
Dim table_list_object As ListObject
Dim table_object_row As ListRow
Set the_sheet = Sheets("MySheet")
Set table_list_object = the_sheet.ListObjects("My
我有一个简短的代码,基本上是将选定的行复制到另一个工作表,并从第一个工作表中删除它。
由于某些原因,当我运行它时,它会运行得很好,如果我选择了一个不同的行,我就会得到一个pasteSpecial method of RangeClass failed错误。
Sub Completed()
Dim trackerRow As Integer, compRow As Integer, answer As Integer
Application.ScreenUpdating = False
Application.CutCopyMode = False
trackerRow = ActiveCel
我正试图创建一个脚本,以保护我的公式,在工作表上,同事将使用。我有10个工作簿,每个26张,所有几乎相同的位置的保护和不受保护的范围。
据我所知,最好的方法是保护整个工作表,然后取消对某些单元格的保护,以便输入数据。
这是我到目前为止的脚本,我已经削减了大约90%的范围,我需要不受保护,以使它更小。
function ProtectRanges() {
var sheet = SpreadsheetApp.getActiveSheet();
var protection = sheet.protect().setDescription("Protect Formulas"
在一个名为考勤的谷歌电子表格中,有一个叫做模板的表格。用户复制此工作表,用当前日期重命名工作表,并使用此工作表标记学生出勤情况。模板表包含受保护的单元格,出勤率通过在给定的空间(未受保护的单元格)中输入学生的ID号来标记。我使用以下脚本复制多个工作表并每天重命名它们:
function createDailyAttendance() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var refss = ss.getSheetByName("DataPointers");
// Get the range R
用例:我希望将数据从A列复制到B列(其中A、B列是任意列)。一旦数据在B列中,我希望删除B列中的重复条目。
创建一个循环,将数据从A列移动到B列,然后删除工作簿中每个工作表的重复项。
`Sub Copy()
For i = 1 To Sheets.Count
Worksheets(i).Range("A1:A100")
Destination:=Worksheets(i).Range("B1")
Next
End Sub
`
为了进行测试,我将任务分成两个不同的Sub()。Sub Copy()正在工作,并且正确地复
我有一个工作表,我希望人们手动填写它
其中一列是日期和时间戳,而不是手动输入,因为这对于excel上的新手来说相当笨拙。我做了一个用户定义的函数并分配给了一个按钮……在...click中选择您想要的单元格时间戳按钮我让made..timestamp在cell...all中完美显示
然而,
我需要锁定和保护工作表上的一些列,只留下一个表供人们填充。当我这样做时,它遇到了关于range?!的运行时错误。我不明白为什么,因为在未受保护的表中只有一个单元格需要更新?
下面是用户定义函数的代码
Sub Timestamp()
Dim ts As Date
With Selection
.Value
我正在使用下面的代码(从@Tanaike,@Rafa Guillermo接收到的帮助)来生成我的工作表的PDF,该函数是从该函数触发的,PDF的电子邮件ID在工作表中显示。当admin用户触发函数时,这段代码工作得很好,但是当编辑器试图这样做时,他得到一个错误,如下所示:
异常:您正在尝试编辑受保护的单元格或对象。如果需要编辑,请与电子表格所有者联系以删除保护。
我试图使用doget(e)来运行函数,但这会导致脚本中出现各种错误。
有人能帮帮我吗。
function generatePdf() {
SpreadsheetApp.flush();
var ss = Spreadsh
我有一个包装Excel.Shape的类。
在我的一个函数(允许将形状从一个工作表移动到另一个工作表)中,我有以下代码:
Private Property ThisShape As Excel.Shape
Public Property Sheet As Excel.Worksheet Implements IShapeWrapper.Sheet
Get
If Not Me.HasShape Then Return Nothing
Return Me._Sheet
End Get
Set(value As Excel.Worksheet)
我有一张用密码保护的工作表。当我用VBA更改工作表上的任何内容时,我会像这样解除保护:
Private Sub Worksheet_Change(ByVal target As Range)
ActiveSheet.Unprotect Password:="pass"
'do stuffs
ActiveSheet.Protect Password:="pass"
End Sub
问题是,我仍然在这一行中得到了错误消息:
For j = 13 To 12 + numberofsomething
With Range
我正在microsoft excel上构建一个工作表,它将处理合理的业务数据。工作表将被放置在USB驱动器上,并且必须不断地从一个地方移动到另一个地方。因此,我在excel VBA中创建了一个功能来启用/禁用密码保护。下面是它的工作原理。
名为xlVeryHidden的页面是在一个单元格中包含用户密码的设置,页面中的另一个单元格包含单词yes或no。密码保护是否激活取决于天气。当用户第一次打开工作簿时,除了包含要继续的按钮之外,所有的工作表都是xlVeryHidden的,他们单击运行宏的按钮来检查设置工作表中的天气。根据so,系统会提示他们登录或取消隐藏所有工作表。
登录代码如下:
If Pa
在Google sheet中,我试图从除工作表所有者之外的所有保护中删除使用脚本的编辑器,为此,我使用下面的代码,但是在运行代码之后,整个保护将被删除,但是,代替删除保护,我希望从保护中删除除工作表所有者之外的所有用户。此外,当代码运行时,每次只删除一个保护,我希望将其应用于所有保护。
function remove(e) {
var sheet = SpreadsheetApp.getActiveSheet();
var protection = sheet.getProtections(SpreadsheetApp.ProtectionType.RANGE)[0];
if (protect
我正在使用EPPlus进行excel导出。在那里面,我锁定了图像。通过向单元格插入一些值之前的代码,我已经解除了对工作表数据或单元格的保护。
解除保护后,我插入值并锁定这些单元格,然后应用保护。对于具有数据的单元格,则被锁定。但是图像已经解锁了。
现在我只有两种解决方案。
如何将图像(或图片)锁定在工作表中。
如何从excel获取图像(或图片)并插入嵌入的图像。
怎么做?这是我的密码。
// If worksheet has protection already, then need to unprotect
if (workSheet.
我在Excel中使用的工作簿有一些受保护的单元格。我无法解锁它们。我需要将数据从一个被锁定的列传输到另一个也被锁定的列。我可以手动输入数据,但是工作簿将不允许我在受保护的列中复制/粘贴数据(无论是使用VBA还是正常方式)。下面是我尝试过的代码示例,没有任何结果。
如果不打开工作簿,这甚至是可能的吗?
示例1:
Sub Requote()
Dim JDsheet As Worksheet
Set JDsheet = ActiveWorkbook.ActiveSheet
JDsheet.Range("Q26:R41").Copy JDsheet.Range("S26:T