- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
背景和工作簿的作用我有一本用于创建问卷的工作簿;用户从多个选项卡的问题列表中进行选择,然后运行一个宏,将所选问题整理到一个新的工作簿中;用户会将新的“已发布”工作簿发送给他们的客户。响应类型也可以选择问题;例如“是/否”、“1 到 5 分”等。整理问题和选项卡后,将在新工作簿中添加响应类型作为数据验证;带有下拉列表的选项卡存在于新工作簿中并且处于隐藏状态。
我看到的行为创建后工作簿仍处于打开状态时,一切正常;但是,当我关闭并重新打开时,出现标准错误“发现无法读取的内容...您是否要修复...” excel 修复会删除所有选项卡中的所有数据验证!这只发生在 通过 VBA 创建和保存文件时;手动创建和保存文件我没有收到此错误。例如,我还尝试在自己创建的新工作簿上使用相同的 VBA 代码添加数据验证,但没有发生此问题。
代码注释;工作流程,以及我尝试过的内容如下:
创建和保存新工作簿的代码
outFileName = Application.GetSaveAsFilename(InitialFileName:=standardName, FileFilter:="Excel Files (*.xlsm), *.xlsm", Title:="Save As")
If outFileName = "FALSE" Then
MsgBox ("Export NOT completed")
GoTo endSafely
Else
outFileName = outFileName
End If
Set outBook = Workbooks.Add
'Activate and save the workbook
outBook.Activate
outBook.SaveAs Filename:=outFileName, FileFormat:=52
应用数据验证的代码
Sub addResponseFormatting(targetBook, targetSheet, targetRow, targetColumn, typeResponse)
Set targetBook = Workbooks(targetBook)
Set thisBook = Workbooks(ThisWorkbook.Name)
'---------------------------------------------------------------------------------------------------
' PROCESS
'---------------------------------------------------------------------------------------------------
targetBook.Activate
targetBook.Sheets(targetSheet).Activate
Dim targetCell As Range
With targetBook.Sheets(targetSheet).Cells(targetRow, targetColumn).Validation
Select Case typeResponse
Case "Yes/No"
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=DropDowns!$D$4:$D$5"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
Case "1 to 5"
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=DropDowns!$C$4:$C$8"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
Case Else
'Do nothing; leave open as free text
'Removes all validation; note this may also remove tooltip messages if we've applied these
.Delete
End Select
End With
End Sub
工作流程
我尝试过的事情
文件上的其他一切都符合预期
其他注意事项
有没有其他人遇到并解决了这个问题?
这是我在这里的第一篇文章,所以我希望我已经很透彻了。谢谢你。
最佳答案
我找到了问题的根源:一些其他数据验证被复制到我的选项卡中,它们的来源(列表类型验证)仍然链接到原始工作簿 - 这导致了错误当 Excel 尝试修复文件时,它会从选项卡中删除所有数据验证(而不仅仅是错误)。
为了确定哪些单元格获得和丢失了数据验证,我使用了这段简单的代码来突出显示经过验证的单元格:
子例程 (数据验证检查功能如下)
Sub runascan()
Set targetBook = Workbooks("test25")
targetBook.Activate
For Each sheetsIn In targetBook.Sheets
sheetsIn.Activate
For Each cellin In Range("A1:Z100")
If checkVal(cellin) = 1 Then
cellin.Interior.Color = RGB(0, 255, 0)
Else
End If
Next cellin
Next sheetsIn
End Sub
检查单元格中数据是否有效的函数
Function checkVal(tRange)
Workbooks(ThisWorkbook.Name).Activate
x = 0
On Error Resume Next
x = tRange.SpecialCells(xlCellTypeSameValidation).Count
On Error GoTo 0
If x = 0 Then
checkVal = 0
Else
checkVal = 1
End If
End Function
关于Excel VBA 2010 : Data validation breaks when workbook saved by VBA, 但手动保存时不是,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53611926/
只是想知道这些结构之间有什么区别(text、data、rodata、bss 等)在链接描述文件中: .data : { *(.data) } .data : { *(.data*) }
Data 定义为其核心功能之一 gfoldl : gfoldl :: (Data a) => (forall d b. Data d => c (d -> b) -> d -> c b)
以下之间有什么区别:data-sly-use、data-sly-resource、data-sly-include 和 数据-sly-模板?我正在阅读 Sightly AEM 上的文档,我非常困惑。
我有一个 Spring Boot、Spring Data JPA (hibernate) Web 应用程序,并且想引入文本搜索功能。 我理解以下内容 hibernate search 或 spring
我不知道我的代码有什么问题。我读了其他有同样问题的人的一些问题,但没有找到答案。当我尝试编译时出现以下错误: ||In function 'main':| |35|error: expected ex
我不太确定为什么会收到此错误或其含义。我的数据框称为“数据”。 library(dplyr) data %>% filter(Info==1, Male==1) %>% lm(CFL_
我一直在 GitHub 等更现代的网站上看到这些属性,它们似乎总是与自定义的弹出窗口一致,如 title 属性。 Option 1 Option 2 Option 3 Option 4 我在 HTML
如何用 iCloud Core Data 替换我现有的 Core Data?这是我的持久商店协调员: lazy var persistentStoreCoordinator: NSPersistent
我一直在 GitHub 等更现代的网站上看到这些属性,它们似乎总是与自定义的弹出窗口一致,如 title 属性。 Option 1 Option 2 Option 3 Option 4 我在 HTML
我正在通过 this project 在 Android 上摆弄 node.js ,我需要一种方法将 js 文件部署到私有(private)目录(以隐藏源代码,防止用户篡改),该目录也物理存在于文件系
大家好我有点沮丧,所以我希望得到一些帮助。我的项目在 SwiftUI 中。我想使用图像选择器将图像保存到 Core Data。我实现了让 ImagePicker 工作,但我正在努力转换 Image -
我有以下数据和代码: mydf grp categ condition value 1 A X P 2 2 B X P 5
我一直在努力解决这个问题,但我根本找不到任何解决问题的方法。希望这里有人可以提供帮助。 我正在尝试为具有以下结构的某些数据创建个人选择矩阵: # A tibble: 2,152 x 32 a
我了解 Data.Map.Lazy 和 Data.Map.Strict 是不同的。但是,当您导入 Data.Map 时,您究竟导入了什么:严格的、惰性的还是两者的组合? 最佳答案 懒人。看着docs
我正在开发一个 C 程序,用于从 BerkeleyDB DBTree 数据库中提取数据值与特定模式匹配的记录。我创建数据库,打开它,将键的 DBT 和数据的另一个 DBT 清零,将 DBT 标志设置为
所以我有以下成员(member)历史表 User_ID | Start date | End Date | Type(0-7) | ---------------------------
随着最近推出的包dataframe ,我认为是时候正确地对各种数据结构进行基准测试,并突出每种数据结构的优势。我不是每个人的不同优势的专家,所以我的问题是,我们应该如何对它们进行基准测试。 我尝试过的
我有来自 API 的数据,但无法将数组中的数据设置为 vue.js 中的 this.data这是来自 API 的数据(JSON) 你能告诉我这个语法吗 {"id":1613, "name_org":"
在 Vue.js到目前为止,我已经找到了两种定义数据的方法:data: {} 和 data() { return; }. data: { defaultLayout: 'default' }
我正在研究Spring Data Rest Services,并在自定义拦截器中遇到一些问题。之前我使用spring-data-rest-webmvc 2.2.0并以以下方式添加了拦截器。 publi
我是一名优秀的程序员,十分优秀!