Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Kubernetes 1.22:再闖新高峰

Kubernetes 1.22:再闖新高峰

作者头像
CNCF
发布于 2021-08-26 04:01:55
发布于 2021-08-26 04:01:55
7610
举报
文章被收录于专栏:CNCFCNCF

我们很高兴地宣布 Kubernetes 1.22 的发布,这是 2021 年的第二个版本!

这个版本包含 53 个增强功能:13 个增强功能已经升级到稳定版,24 个增强功能正在进入 beta 版,16 个增强功能正在进入 alpha 版。另外,有三个特性已被弃用。

今年 4 月,Kubernetes 的发布节奏正式从每年 4 个版本改为 3 个版本。这是第一个与该变更相关的长周期版本。随着 Kubernetes 项目的成熟,每个周期的增强数量也在增长。对于贡献者社区和版本工程团队来说,这意味着从一个版本到另一个版本要做更多的工作,这也会给最终用户社区带来压力,要求他们不断更新包含越来越多特性的版本。

将发布周期从每年 4 个版本更改为 3 个版本平衡了项目的许多方面,包括如何管理贡献和发布,以及社区计划升级和保持最新的能力。

你可以在 Kubernetes 官方博客Kubernetes 发布节奏改变:这是你需要知道的阅读更多信息。

主题

服务器端应用毕业到 GA

服务器端应用(Server-side Apply)是 Kubernetes API 服务器上运行的一个新的字段所有权和对象合并算法。服务器端应用程序通过声明性配置帮助用户和控制器管理其资源。它允许他们通过声明的方式创建和/或修改他们的对象,只需要发送他们完全指定的意图。经过几个测试版本后,服务器端应用程序现在普遍可用。

外部凭据提供者现在稳定了

对 Kubernetes 客户端证书插件的支持从 1.11 开始就处于测试阶段,随着 Kubernetes 1.22 的发布,现在已经稳定下来了。GA 特性集包括对提供交互式登录流的插件的改进支持,以及一些 bug 修复。有兴趣的插件作者可以看看sample-exec-plugin[2]入门。

etcd 移到 3.5.0

Kubernetes 的默认后端存储 etcd 有了新的版本:3.5.0。新版本对安全性、性能、监控和开发人员体验进行了改进。有许多 bug 修复和一些关键的新特性,比如迁移到结构化日志记录和内置日志旋转。该版本附带了一个详细的未来路线图,以实现解决交通超载问题的解决方案。你可以在3.5.0 发布公告[3]中阅读完整而详细的更改列表。

内存资源的服务质量

最初,Kubernetes 使用的是 v1 cgroups API。通过这种设计,Pod 的 QoS 类只应用于 CPU 资源(如 cpu_shares)。作为一个 alpha 特性,Kubernetes v1.22 现在可以使用 cgroups v2 API 来控制内存分配和隔离。此特性旨在在存在内存资源争用时提高工作负载和节点可用性,并提高容器生命周期的可预测性。

节点系统 swap 支持

在设置和使用 Kubernetes 时,每个系统管理员或 Kubernetes 用户的处境都是一样的:禁用 swap 空间。随着 Kubernetes 1.22 的发布,alpha 支持可用来运行带有 swap 内存的节点。此更改允许管理员选择在 Linux 节点上配置 swap,将块存储的一部分作为额外的虚拟内存处理。

Windows 增强和功能

为了继续支持不断增长的开发人员社区,SIG Windows 发布了他们的开发环境[4]。这些新工具支持多个 CNI 提供程序,可以在多个平台上运行。还有一种新的方法可以从头开始运行最新的 Windows 特性,即编译 Windows kubelet 和 kube-proxy,然后将它们与其他 Kubernetes 组件的日常构建一起使用。

CSI 对 Windows 节点的支持在 1.22 版本中转移到了 GA。在 Kubernetes v1.22 中,Windows 特权容器是一个 alpha 特性。为了允许在 Windows 节点上使用 CSI 存储,CSIProxy[5]支持将 CSI 节点插件部署为非特权 pod,使用代理在节点上执行特权存储操作。

seccomp 的默认配置文件

kubelet 中增加了默认 seccomp 配置文件的 alpha 特性,以及新的命令行标志和配置。在使用时,这个新特性提供了集群范围的 seccomp 缺省值,默认情况下使用 RuntimeDefault seccomp 配置文件而不是 Unconfined。这增强了 Kubernetes 部署的默认安全性。安全管理员知道工作负载在默认情况下更安全,现在可以睡得更好。要了解更多的特性,请参考官方seccomp 教程[6]

使用 kubeadm 更安全的控制平面

一个新的 alpha 特性允许以非 root 用户的身份运行 kubeadm 控制平面组件。这是 kubeadm 长期以来要求的安全措施。要尝试它,你必须启用 kubeadm 特定的 RootlessControlPlane 功能门。当你使用这个 alpha 特性部署集群时,你的控制平面以较低的权限运行。

Kubernetes 1.22 还给 kubeadm 带来了新的v1beta3 配置 API[7]。这个迭代添加了一些长期要求的特性,并弃用了一些现有的特性。v1beta3 版本现在是首选的 API 版本;v1beta2 API 仍然可用,尚未被弃用。

重大变化

移除几个已弃用的 beta api

一些被弃用的 beta API 已经在 1.22 中被移除,以支持这些 API 的 GA 版本。所有现有对象都可以通过稳定的 API 进行交互。该移除包括 Ingress、IngressClass、Lease、APIService、ValidatingWebhookConfiguration、MutatingWebhookConfiguration、CustomResourceDefinition、TokenReview、SubjectAccessReview 和 CertificateSigningRequest API 的 beta 版本。

要了解完整的列表,请查看已弃用 API 迁移指南[8]以及博文Kubernetes 1.22 版本将删除的 API 和特性:这里是你需要知道的[9]

临时容器的 API 更改和改进

用于创建临时容器[10]的 API 在 1.22 中有更改。临时容器特性是 alpha 特性,默认情况下是禁用的,并且新 API 不能与试图使用旧 API 的客户端一起工作。

对于稳定特性,kubectl 工具遵循 Kubernetes版本倾斜策略[11];然而,kubectl v1.21 及更早版本不支持临时容器的新 API。如果你计划使用 kubectl debug 来创建临时容器,并且你的集群正在运行 Kubernetes v1.22,那么你不能使用 kubectl v1.21 或更早的版本来这样做。请将 kubectl 升级到 1.22,如果你希望将 kubectl 调试与集群版本混合使用。

其他的更新

毕业到稳定

  • Bound Service Account Token Volumes
  • CSI Service Account Token
  • Windows Support for CSI Plugins
  • Warning mechanism for deprecated API use
  • PodDisruptionBudget Eviction

显著特点更新

  • 引入了一个新的 PodSecurity 准入 alpha 特性,旨在替代 PodSecurityPolicy
  • 内存管理器进入测试版
  • 启用 API Server Tracing 的新 alpha 特性
  • kubeadm 配置格式的一个新的 v1beta3 版本
  • 用于 PersistentVolumes 的通用数据填充器现在在 alpha 版本中可用
  • Kubernetes 控制平面现在将始终使用 CronJobs v2 控制器
  • 作为 alpha 特性,所有 Kubernetes 节点组件(包括 kubelet、kube-proxy 和容器运行时)都可以作为非 root 用户运行

版本说明

你可以在版本说明[12]中查看 1.22 发布的完整细节。

下载

Kubernetes 1.22 可供下载[13],也可以在GitHub[14]项目中获得。

有一些很好的资源可以帮助你开始使用 Kubernetes。你可以在 Kubernetes 主站点上查看一些交互式教程[15],或者通过kind[16]使用 Docker 容器在你的机器上运行一个本地集群。如果你想尝试从头开始构建集群,请参阅 Kelsey Hightower 编写的Kubernetes the Hard Way[17]教程。

发布团队

这个发行版是由一群非常敬业的个人组成的,他们组成了一个团队,交付 Kubernetes 发行版中的技术内容、文档、代码和许多其他组件。

非常感谢发行负责人 Savitha Raghunathan 带领我们度过了一个成功的发行周期,也感谢发行团队中所有人的相互支持,以及为向社区发布 1.22 版本所付出的努力。

我们也想借此机会纪念 Peeyush Gupta,他是我们今年早些时候失去的团队成员。Peeyush 积极参与 SIG ContribEx 和 Kubernetes 发布团队,最近担任 1.22 通信负责人。他的贡献和努力将继续反映在他帮助建立的社区中。已经创建了一个CNCF 纪念页面[18],社区可以在这里分享想法和记忆。

版本标志

在持续的流行病、自然灾害和始终存在的倦怠阴影中,Kubernetes 1.22 版本包括 53 个增强。这是迄今为止最大的版本。这一成就的实现要归功于努力工作、充满激情的发布团队成员以及 Kubernetes 生态系统中令人惊叹的贡献者。版本标志是我们不断达到新的里程碑和创造新的记录的提醒。它是献给所有的发行团队成员,徒步旅行者和天文爱好者的!

该标志由Boris Zotkin[19]设计。Boris 是 MathWorks 的 Mac/Linux 管理员。他喜欢生活中简单的事情,喜欢和家人在一起。这个精通技术的人总是准备好迎接挑战,并乐于帮助朋友!

用户亮点

  • 今年 5 月,CNCF 在全球欢迎了 27 个新组织,成为多样的云原生生态系统的成员。这些新成员将参加 CNCF 的活动,包括即将于 2021 年 10 月 12 日至 15 日在洛杉矶举行的北美 KubeCon + CloudNativeCon。
  • CNCF 在 2021 年欧洲 KubeCon + CloudNativeCon 虚拟大会上授予 Spotify 最高最终用户奖。

项目速度

CNCF K8s DevStats 项目[20]聚集了许多与 Kubernetes 的开发速度和各种子项目相关的有趣数据点。这包括从个人贡献到贡献的公司数量的所有内容,并说明了这个生态系统的发展所付出的努力的深度和广度。

在运行了 15 周(4 月 26 日至 8 月 4 日)的 v1.22 发布周期中,我们看到了来自 1063 家公司和 2054 个人的贡献。

生态系统更新

  • 2021 年欧洲 KubeCon + CloudNativeCon 虚拟大会[21]已于 5 月举行,这是第三次虚拟活动。所有的讲座现在都可以按需提供[22]给任何想赶上进度的人!
  • 春季 LFX 项目拥有最大的毕业班,有 28 名成功的 CNCF 实习生!
  • CNCF 在今年年初在 Twitch 上推出了直播,目标是为任何想要在云原生社区学习、成长和与他人合作的人提供明确的互动媒体体验。

活动更新

  • 2021 年北美 KubeCon + CloudNativeCon 大会[23]将于 2021 年 10 月 12 日至 15 日在洛杉矶举行!你可以在活动网站上找到关于会议和注册的更多信息。
  • Kubernetes 社区日[24]即将在意大利、英国和华盛顿特区举行活动。

1.22 版本网络研讨会

请于 2021 年 9 月 7 日加入 Kubernetes 1.22 发布团队,了解该版本的主要特性,以及弃用和删除,以帮助制定升级计划。更多信息和注册请访问 CNCF 在线项目网站的活动页面[25]

加入参与

如果你有兴趣为 Kubernetes 社区做出贡献,那么特殊兴趣小组(SIG)是一个很好的起点。他们中的许多人可能与你的兴趣一致!如果你有什么想与社区分享的东西,你可以参加每周社区会议,或使用以下任何渠道:

  • Kubernetes Contributor[26]网站了解更多关于为 Kubernetes 做贡献的信息。
  • 关注我们的推特[]@Kubernetesio](https://twitter.com/kubernetesio "]@Kubernetesio")获取最新消息
  • 加入Discuss[27]社区的讨论
  • 加入Slack[28]社区
  • 分享你的 Kubernetes故事[29]
  • 博客[30]上阅读更多关于 Kubernetes 的情况
  • 了解更多关于Kubernetes 发布团队[31]的信息

参考资料

[1]

Kubernetes 1.22 发布团队: https://github.com/kubernetes/sig-release/blob/master/releases/release-1.22/release-team.md

[2]

sample-exec-plugin: https://github.com/ankeesler/sample-exec-plugin

[3]

3.5.0 发布公告: https://etcd.io/blog/2021/announcing-etcd-3.5/

[4]

开发环境: https://github.com/kubernetes-sigs/sig-windows-dev-tools/

[5]

CSIProxy: https://github.com/kubernetes-csi/csi-proxy

[6]

seccomp 教程: https://kubernetes.io/docs/tutorials/clusters/seccomp/#enable-the-use-of-runtimedefault-as-the-default-seccomp-profile-for-all-workloads

[7]

v1beta3 配置 API: https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/

[8]

已弃用 API 迁移指南: https://kubernetes.io/docs/reference/using-api/deprecation-guide/#v1-22

[9]

Kubernetes 1.22 版本将删除的 API 和特性:这里是你需要知道的: https://blog.k8s.io/2021/07/14/upcoming-changes-in-kubernetes-1-22/

[10]

临时容器: https://kubernetes.io/docs/concepts/workloads/pods/ephemeral-containers/

[11]

版本倾斜策略: https://kubernetes.io/releases/version-skew-policy/

[12]

版本说明: https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.22.md

[13]

下载: https://kubernetes.io/releases/download/

[14]

GitHub: https://github.com/kubernetes/kubernetes/releases/tag/v1.22.0

[15]

交互式教程: https://kubernetes.io/docs/tutorials/

[16]

kind: https://kind.sigs.k8s.io/

[17]

Kubernetes the Hard Way: https://github.com/kelseyhightower/kubernetes-the-hard-way

[18]

CNCF 纪念页面: https://github.com/cncf/memorials/blob/main/peeyush-gupta.md

[19]

Boris Zotkin: https://www.instagram.com/boris.z.man/

[20]

CNCF K8s DevStats 项目: https://k8s.devstats.cncf.io/

[21]

2021 年欧洲 KubeCon + CloudNativeCon 虚拟大会: https://events.linuxfoundation.org/kubecon-cloudnativecon-europe/

[22]

按需提供: https://www.youtube.com/playlist?list=PLj6h78yzYM2MqBm19mRz9SYLsw4kfQBrC

[23]

2021 年北美 KubeCon + CloudNativeCon 大会: https://events.linuxfoundation.org/kubecon-cloudnativecon-north-america/

[24]

Kubernetes 社区日: https://community.cncf.io/kubernetes-community-days/about-kcd/

[25]

活动页面: https://community.cncf.io/events/details/cncf-cncf-online-programs-presents-cncf-live-webinar-kubernetes-122-release/

[26]

Kubernetes Contributor: https://www.kubernetes.dev/

[27]

Discuss: https://discuss.kubernetes.io/

[28]

Slack: http://slack.k8s.io/

[29]

故事: https://docs.google.com/a/linuxfoundation.org/forms/d/e/1FAIpQLScuI7Ye3VQHQTwBASrgkjQDSS5TP0g3AXfFhwSM9YpHgxRKFA/viewform

[30]

博客: https://kubernetes.io/blog/

[31]

Kubernetes 发布团队: https://github.com/kubernetes/sig-release/tree/master/release-team

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-08-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 CNCF 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
VSTO插件功能介绍-清除空行【进化过程】
MsgBox(.Address + "-" + r.ToString() + "-" + .Rows(r).Address)
哆哆Excel
2024/07/12
1060
VSTO插件功能介绍-清除空行【进化过程】
VBA专题11:详解UsedRange属性
UsedRange属性是Worksheet对象的一个有用的属性,可以返回工作表中已使用的单元格区域。实际上,根据UsedRange的意思,我们就可以明白,该属性代表工作表中已使用的区域,不仅包括可以看到内容的单元格,而且不包括应用了格式、添加批注或其他一些修改的单元格。我们可以使用UsedRange属性来操控Excel工作表数据。
fanjy
2021/06/01
8.4K0
VBA专题11:详解UsedRange属性
EXCEL VBA语句集300
        定制模块行为 (1) Option Explicit ‘强制对模块内所有变量进行声明 Option Private Module ‘标记模块为私有,仅对同一工程中其它模块有用,在宏对话框中不显示  Option Compare Text ‘字符串不区分大小写  Option Base 1 ‘指定数组的第一个下标为1 (2) On Error Resume Next ‘忽略错误继续执行VBA代码,避免出现错误消息 (3) On Error GoTo ErrorHandler ‘当错误发生时跳转到过程中的某个位置 (4) On Error GoTo 0 ‘恢复正常的错误提示 (5) Application.DisplayAlerts=False ‘在程序执行过程中使出现的警告框不显示 (6) Application.ScreenUpdating=False ‘关闭屏幕刷新 Application.ScreenUpdating=True ‘打开屏幕刷新 (7) Application.Enable.CancelKey=xlDisabled ‘禁用Ctrl+Break中止宏运行的功能  工作簿 (8) Workbooks.Add() ‘创建一个新的工作簿 (9) Workbooks(“book1.xls”).Activate ‘激活名为book1的工作簿 (10) ThisWorkbook.Save ‘保存工作簿 (11) ThisWorkbook.close ‘关闭当前工作簿 (12) ActiveWorkbook.Sheets.Count ‘获取活动工作薄中工作表数 (13) ActiveWorkbook.name ‘返回活动工作薄的名称 (14) ThisWorkbook.Name ‘返回当前工作簿名称 ThisWorkbook.FullName ‘返回当前工作簿路径和名称 (15) ActiveWindow.EnableResize=False ‘禁止调整活动工作簿的大小 (16) Application.Window.Arrange xlArrangeStyleTiled ‘将工作簿以平铺方式排列 (17) ActiveWorkbook.WindowState=xlMaximized ‘将当前工作簿最大化  工作表 (18) ActiveSheet.UsedRange.Rows.Count ‘当前工作表中已使用的行数 (19) Rows.Count ‘获取工作表的行数(注:考虑向前兼容性) (20) Sheets(Sheet1).Name= “Sum” ‘将Sheet1命名为Sum (21) ThisWorkbook.Sheets.Add Before:=Worksheets(1) ‘添加一个新工作表在第一工作表前 (22) ActiveSheet.Move After:=ActiveWorkbook. _ Sheets(ActiveWorkbook.Sheets.Count) ‘将当前工作表移至工作表的最后 (23) Worksheets(Array(“sheet1”,”sheet2”)).Select ‘同时选择工作表1和工作表2 (24) Sheets(“sheet1”).Delete或 Sheets(1).Delete ‘删除工作表1 (25) ActiveWorkbook.Sheets(i).Name ‘获取工作表i的名称 (26) ActiveWindow.DisplayGridlines=Not ActiveWindow.DisplayGridlines ‘切换工作表中的网格线显示,这种方法也可以用在其它方面进行相互切换,即相当于开关按钮 (27) ActiveWindow.DisplayHeadings=Not ActiveWindow.DisplayHeadings ‘切换工作表中的行列边框显示 (28) ActiveSheet.UsedRange.FormatConditions.Delete ‘删除当前工作表中所有的条件格式 (29) Cells.Hyperlinks.Delete ‘取消当前工作表所有超链接 (30) ActiveSheet.PageSetup.Orientation=xlLandscape 或ActiveSheet.PageSetup.Orientation=2 ‘将页面设置更改为横向 (31) ActiveSheet.PageSetup.RightFooter=ActiveWorkbook.FullName ‘在页面设置的表尾中输入文件路径 ActiveSheet.PageSetup.Le
Tony老师
2020/03/05
2.2K0
VBA程序:获取工作表中使用区域后的第一个空行
例如,对于下图1所示的工作表,调用上述函数后,返回数字9,即已使用区域后的第一行是第9行。
fanjy
2023/12/11
5130
VBA程序:获取工作表中使用区域后的第一个空行
VBA字典(详解,示例)「建议收藏」
如果对上面水果种类进行计数:countifs,只需要将分类汇总的值改为数值1即可,每出现一次‘+1’
全栈程序员站长
2022/07/22
6.4K1
VBA字典(详解,示例)「建议收藏」
VBA用字典批量查找社保数据
【问题】我们知道社保导出的数据是很多合并的单元格,如果要查找一个数据都要找很久,如果数量多了更多费时,基于以上问题,特用VBA设计一个批量查找的程序。
哆哆Excel
2022/10/25
7390
VBA用字典批量查找社保数据
VBA收藏一常用的自定义函数
Sub 测试() If IsFileExists("D:\new_temp\") Then Debug.Print "存在" Else Debug.Print "不存在" End If End Sub '参数名称 含义 说明 'strShtName 指定工作表名称 必选 'strWbName 指定工作簿名称 可选 'Sub Demo() ' Debug.Print udfSheetExists("Sheet1") ' Debug.Print udfSheetExist
哆哆Excel
2022/10/25
6200
VBA收藏一常用的自定义函数
ExcelVBA在选择区域(有合并)中删除清除空行
现有数据,1w多行,其中有部分列有不同合并单元格,跨行也不一样。如果要进行筛选删除空行,有一定的时间与难度。
哆哆Excel
2024/05/20
1960
ExcelVBA在选择区域(有合并)中删除清除空行
Excel VBA编程
在Excel中,数据只有文本,数值,日期值,逻辑值和错误值五种类型。但是在VBA中,数据类型跟Excel不完全相同。根据数据的特点,VBA将数据分为布尔型(boolean),字节型(byte),整数型(integer),单精度浮点型(single),双精度浮点型(double),货币型(currency),小数型(decimal),字符串型(string),日期型(date),对象型等等
全栈程序员站长
2022/08/11
46.6K0
Excel VBA编程
Excel之VBA简单宏编程
excel是一款很经典的数据分析的工具,里面包含了很多内置函数,但实际情况有时却复杂得多,而excel的宏编程提供了自定义函数的功能,正好有老师需要帮忙做一些数据分析,就学习了一下,下面是我的学习笔记。本人使用的是excel2013。有出入的地方可以参考。
全栈程序员站长
2022/07/01
3.7K0
Excel之VBA简单宏编程
小游戏2048
用Excel VBA来实现的手机上玩的那种组合数字的小游戏。 Public Row As Integer, Col As Integer '偏移 Di
xyj
2020/07/28
7990
小游戏2048
ExceLVBA学习笔记之Find+多列多行删除+列数字与列字母互转
Rows(“2474:2484”).deleteShift:=xlToLeft
哆哆Excel
2022/10/25
1.8K0
ExceLVBA学习笔记之Find+多列多行删除+列数字与列字母互转
Excel VBA 自动填充空白并合并相同值的解决方案
在Excel中经常会遇到这样的数据处理需求:一列数据中存在多个空白单元格,需要用其上方最近的非空值填充,然后将相同的连续值合并成一个单元格。比如:
洛秋_
2024/12/31
3010
VBA实战技巧01: 在代码中引用动态调整单元格区域的5种方法
在VBA代码中,经常要引用单元格数据区域并对其进行操作。然而,如果对数据区域采用“硬编码”地址,那么当该区域大小变化时,必须修改相应的引用该区域的代码。本文整理了可以动态引用数据区域的5种方法,供编写代码时参考。
fanjy
2020/02/12
4.9K0
Excel VBA 编程练习
最近做了一个VBA的小case,用于方便excel数据的处理,主要的功能代码记录如下。
全栈程序员站长
2022/09/05
8960
VBA应用技巧:使用VBA快速隐藏工作表行
使用Excel VBA隐藏行的简单方法是使用联合区域。通常,如果要使用VBA快速隐藏行,可以选择自动筛选工具,使用一行代码可快速隐藏数千行。然而,如果需要在同一区域内为其他目的使用自动筛选,那就必须单独处理每个单元格。如果了解VBA,当程序必须在多个单元格上循环时,它可能会较慢,尤其是在每次迭代后需要执行操作时。
fanjy
2022/11/16
4.5K0
VBA应用技巧:使用VBA快速隐藏工作表行
VBA程序:查找并列出指定工作表中所有合并单元格的地址
运行下面的VBA过程,将列出当前工作表中所有合并单元格的地址。程序会新建一个工作表并重命名,然后在其中输入所有合并单元格的地址。
fanjy
2024/03/11
3250
VBA程序:查找并列出指定工作表中所有合并单元格的地址
Excel实战技巧53: 在VBA代码中使用工作表公式更有效地实现查找
在工作表中查找值是很常见的操作,我们可以使用VLOOKUP函数、MATCH函数、INDEX函数等来查找值。当使用VBA代码在大量的数据中进行查找操作时,灵活运用工作表公式,往往能够提高效率。
fanjy
2019/09/19
2.9K0
Excel实战技巧53: 在VBA代码中使用工作表公式更有效地实现查找
Excel VBA解读(141): 自定义函数性能改进示例
Pedro想知道怎样加速他的自定义函数,该函数需要计算35040个单元格的结果,即单元格与未知长度值列之间的最小差异。
fanjy
2019/07/19
1.5K0
Excel宏教程 (宏的介绍与基本使用)
大家好,又见面了,我是你们的朋友全栈君。 Excel宏教程 (宏的介绍与基本使用) Microsoft excel是一款功能非常强大的电子表格软件。它可以轻松地完成数据的各类数学运算,并用各种二维或三维图形形象地表示出来,从而大大简化了数据的处理工作。但若仅利用excel的常用功能来处理较复杂的数据,可能仍需进行大量的人工操作。但excel的强大远远超过人们的想象–宏的引入使其具有了无限的扩展性,因而可以很好地解决复杂数据的处理问题。 随着支持Windows的应用程序的不断增多和功能的不断增强,越来
全栈程序员站长
2022/08/23
6.9K0
推荐阅读
相关推荐
VSTO插件功能介绍-清除空行【进化过程】
更多 >
LV.1
这个人很懒,什么都没有留下~
作者相关精选
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档