SharePoint 2013列表隐藏列导出Excel仍显示的解决方法问询
SharePoint 列表的视图隐藏设置仅控制列在网页端的视图展示效果,导出Excel的默认逻辑是拉取所有未被设置为全局隐藏的字段,和当前视图是否勾选显示该列无关。你可以根据使用场景选择以下任意一种方案处理:
方案1:修改字段全局可见性(适合「Incremental Number」为自动生成、无需手动编辑的场景)
- 进入对应列表的「列表设置」页面,在「栏」模块下找到并点击「Incremental Number」字段进入编辑页
- 找到「是否在“新建项目”和“编辑项目”页面上显示该栏?」选项,选择「否」后保存设置
- 重新导出Excel,该列就不会出现在导出文件中
提示:该操作仅会隐藏表单中的字段展示,不会影响该列用于生成其他ID列的计算逻辑。
方案2:临时调整导出范围(适合偶尔导出、不想修改字段全局配置的场景)
- 回到列表网页视图,右键点击表头栏,手动隐藏所有不需要导出的列,确认当前视图仅展示需要导出的内容
- 点击页面顶部「导出到Excel」按钮,在弹出的确认窗口中选择仅导出当前视图可见列(部分2013版本显示为「导出所选视图」,确认选中你刚调整完的当前视图即可)
- 导出完成后可将视图恢复为原有配置,不会影响其他用户使用。
方案3:通过PowerShell设置字段禁止导出(适合完全不需要该字段出现在任何导出文件的场景)
- 打开SharePoint 2013 Management Shell,运行以下命令,替换命令中对应的站点URL、列表名称、字段名参数即可:
$web = Get-SPWeb "替换为你的站点完整URL" $list = $web.Lists["替换为你的列表名称"] $field = $list.Fields["Incremental Number"] $field.ExcludeFromClientApi = $true $field.Update() $web.Dispose()
- 命令执行完成后,该字段会被排除在所有客户端API调用(包括Excel导出)的返回结果中,不会再出现在导出文件里。
内容的提问来源于stack exchange,提问作者Nina
相关产品推荐
相关产品推荐

