|在本文中,我们将学习如何在Excel中的单元格中获取工作表的名称。

场景

简而言之,如果您要处理复杂的数据。并且您希望工作表名称作为单元格中的文本。

Excel中的CELL函数

Excel中的单元格功能可为您提供有关工作表的信息,例如col,内容,文件名,.. etc。

语法

=CELL(“filename”,A1)

“文件名”:获取参考单元格工作表的全名A1:工作表的单元格参考

image

但是我们只需要提取工作表名称。基本上是姓氏。

如您所见,工作表名称以](以大括号闭合)开头。为此,我们只需要其在文本中的位置,然后提取工作表名称即可。

image

在这里,我从结果的最后一个开始算起了12个字符。

但是我们不能每次都这样做。

因此,要从全名中提取工作表名称,我们需要找到](大括号中的符号)的位置

使用公式查找]

=FIND(“]”,CELL(“filename”,A1))

image

58是]的位置。

现在我们的公式已经完成

=MID(CELL(“filename”,A1),FIND(“]”,CELL(“filename”,A1))+1,255)

说明:

CELL(“ filename”,A1):为您获取工作表的全名FIND(“]”,CELL(“ filename”,A1))+ 1:此函数为您提供]的位置并加+1,因为我们需要仅工作表名称的第一个字符的位置。

255:Excel的工作表名称的最大字数限制。

MID:MID函数使用从头到尾的位置从文本中提取特定的子字符串。

image

在这里,我们使用公式提取了文件名。

现在我们有了另一个公式,而不是使用MID函数。使用RIGHT功能。

RIGHT函数从文本的最后提取特定的子字符串。

使用公式:

=RIGHT(CELL(“filename”,A2),LEN(CELL(“filename”,A2))-FIND(“]”,

CELL(“filename”,A2)))

说明:

FIND(“]”,CELL(“ filename”,A2)):提取工作表名称char的位置。

LEN(CELL(“ filename”,A2)):获取文本(文件名)的长度

RIGHT:RIGHT函数使用其位置从文本中提取字符串。

image

如您所见,此功能也可以正常工作。是的…​现在我们有2个不同的公式,其中的逻辑仅用于提取工作表名称。

VBA示例

我们将数据分为三页,我们希望将所有数据合并到主页。每个工作表中的数据的末尾都应有工作表名称。

image

image

单击“合并数据和工作表名称”按钮后,数据将被合并到主工作表上。

image

代码说明

SheetCount = Application.Worksheets.Count上面的代码用于获取工作簿中工作表的数量。

LastRow = ActiveCell.SpecialCells(xlLastCell).Row上面的代码用于获取最后一个单元格的行号。

Range(“ A2:F”&LastRow).Select上面的代码用于选择从单元格A2开始的所有数据。* Selection.Copy上面的代码用于复制所选数据。

Range(Selection,Cells(LastRow,7))。Value = Sheets(Counter).Name上面的代码用于将工作表名称分配给选定的单元格。

请遵循以下代码

Option Explicit

Sub ConsolidateDataWithSheetName()

'Declaring variables

Dim Counter As Integer

Dim SheetCount As Integer

Dim LastRow As Long

'Disabling screen updates

Application.ScreenUpdating = False

'Getting the count of worksheets in the workbook

SheetCount = Application.Worksheets.Count

For Counter = 2 To SheetCount



Sheets(Counter).Activate



Range("A2").Select



'Getting the row number of the last cell

LastRow = ActiveCell.SpecialCells(xlLastCell).Row



'Selecting all the data in the workbook

Range("A2:F" & LastRow).Select



'Copying the selected data

Selection.Copy



Sheets("Main").Activate



Range("A2").Select

LastRow = ActiveCell.SpecialCells(xlLastCell).Row

LastRow = LastRow + 1



'Pasting the copied data to last row on the Main sheet

Cells(LastRow, 1).Select

ActiveSheet.Paste



Cells(LastRow, 7).Select

LastRow = ActiveCell.SpecialCells(xlLastCell).Row



'Adding the sheet name along with the data

Range(Selection, Cells(LastRow, 7)).Value = Sheets(Counter).Name



Next

End Sub

以下是在Excel中使用…​.函数的所有观察笔记

注意:

。最小长度必须是一个字符。

。最大长度不能超过31个字符。

。工作表中不允许重复的名称或不同标签的相同名称。

。命名工作表标签不允许名称中包含某些字符。

像[,],,?之类的字符,|,|||希望这篇关于如何在Excel中获取单元格中工作表名称的文章具有解释性。在此处找到更多有关提取名称值和相关Excel公式的文章。您喜欢我们的博客,在Facebook上与您的朋友分享,也可以在Twitter和Facebook上关注我们。我们希望收到您的来信,让我们知道我们如何改进,补充或创新我们的工作并使其更好为您服务,请写信给我们[email protected]

相关文章:

link:/ excel-range-name-all-about- excel-named-ranges-excel-range-name [关于Excel命名范围的所有信息]:带有名称标签的excel范围易于在excel公式中使用,请点击此处了解所有信息。 excel-范围名称-excel中的名称框[Excel中的名称框]`:Excel名称框不过是excel工作表左上方的小显示区域,用于显示活动单元格的名称或可以在excel范围内引用一个单元格或数组。

link:/ excel-formula-and-function-get-sheet-name-only [如何在Excel中获取工作表的工作表名称]:Excel中的CELL函数可为您获取有关任何工作表的信息,例如col,内容,文件名, ..等等。

link:/ excel-range-name-dynamic-named-ranges-in-excel [如何在Excel中使用动态命名范围]:动态名称范围是用于根据以下内容扩展和缩小的数组或范围的名称数据。

在此处了解有关动态命名范围的更多信息。

如何在Excel中创建带有颜色的下拉列表:使用条件格式设置和数据验证将颜色添加到Excel的下拉列表中。

`link:/ excel-text-editing-and-format-join-first-last-name-in-excel [在excel中加入名字和姓氏]’:使用CONCATENATE函数或&运算子。本文介绍了如何在Excel中添加两个或多个单元格。

热门文章:

链接:/ tips-if-condition-in-excel [如何在Excel中使用IF函数]:Excel中的IF语句检查条件,如果条件为TRUE,则返回一个特定值,如果为FALSE,则返回另一个特定值。

`link:/ formulas-and-functions-introduction-vlookup-function [如何在Excel中使用VLOOKUP函数]’:这是excel中最常用和最受欢迎的函数之一,用于从不同范围查找值和床单。

如何在Excel中使用SUMIF函数:这是另一个仪表板必需的功能。这可以帮助您汇总特定条件下的值。

如何在Excel中使用COUNTIF函数:使用此惊人的函数对带有条件的值进行计数。您无需过滤数据即可计算特定值。 Countif功能对于准备仪表板至关重要。