Tag: 分割

MS Excel:返回第一个数字前的所有字符

我MS Excel 2013我有一列列出邮政编码信息。 它包含一个4位数的邮政编码,后跟一个城市名称,但在某些字段中,邮政编码前面是一个城镇名称,如下所示: 7100 Vejle 8600 Silkeborg Grauballe 8600 Silkeborg 我想把这个数据分成三列:镇名(在大多数情况下为空),邮政编码和城市名称,所以我需要一个公式,返回第一个数字前的所有字符,但我不知道该怎么办那。

EXCEL – 熔合文本单元并分割成不同的行

我有一个看起来像这样的文件,包含大量的数据 >ENSMUSG00000020333|ENSMUST00000000145|Acsl6 AGCTCCAGGAGGGCCCGTCTCAGTCCGATGAACTTTGCAGCAATATTATAGTTATTCGTG GTTCACAGAATTCCATTAAACATAAAGAAAAAACATAA >ENSMUSG00000000001|ENSMUST00000000001|Gnai3 GAGGATGGCATAGTAAAAGCTATTACAGGGAGGAGTGTTGAGACCAGATGTCATCTACTG CTCTGTAATCTAATGTTTAGGGCATATTGAAGTTGAGGTGCTGCCTTCCAGAACTTAAAC 列应该被转换,以便行总是包含: ENSMUSG*** ENSMUST*** GeneName Sequence (four separate columns) 序列列应该是以A,C,G或T开头的行融合成一个文本单元格,融合的单元格数量因基因而异。 有没有人有build议如何解决这个问题? 非常感谢你的帮助! 祝好运

我需要在Excel中将数组数据分割成单元格

我有一个电子表格查询数据源,并返回一个约230行逗号分隔结果的数组。 数据如下所示: 我需要所有这些逗号分隔的值,现在在一个单元格(B列)拆分成单独的单元格。 每行通常有21个结果。 所以结果应该是这样的: 数据开始的行可能会有所不同,但通常在第80行左右开始。最上面的行用于显示下面数据的结果。 起点可以固定在120行(如果这使脚本更容易),这将为未来的开发留下充足的空间。 我试过修改我在这里find的几个不同的解决scheme,但都没有工作。 任何帮助是至高无上的赞赏!

Split函数在循环内给出'下标超出范围'的错误

下面的代码片段试图查看一列单元格的内容。 每个单元格格式:“X.XX _-_ X.XX”。 例如:5.66 – 13.44。 代码是为了取每个单元格,将每个string转换为一个双精度值,将它们与其他数字进行比较,然后重复下一个单元格。 Sub Test() Dim PC As Worksheet Dim i As Integer Dim MaxSpace, MinSpace As Double Dim MinMax() As String Set PC = Workbooks("RFQ_Worksheet").Worksheets("Press Choice") For i = 7 To 52 MinMax = Split(PC.Cells(i, 8), " – ", 2) MaxSpace = CDbl(MinMax(1)) MinSpace = CDbl(MinMax(0)) If MaxSpace > […]

将特定工作表导出到多个工作簿

真的停留在我目前使用的macros。 我现在所拥有的是一个marco,它将每张工作表导出到一个单独的工作簿中,这个工作簿非常棒。 我的问题是我有列链接到另一个工作表(“映射”)进行数据validation。 当我打开新创build的工作簿时,数据validation链接全部断开。 所以我想知道是否有可能改变这个macros,所以当它导出每个工作表,它也导出到每个新创build的工作簿“映射”工作表? 我目前使用的代码如下: Option Explicit Dim MainWorkBook As Workbook Dim NewWorkBook As Workbook Sub ExportWorksheet() Dim Pointer As Long Set MainWorkBook = ActiveWorkbook Range("E2").Value = MainWorkBook.Sheets.Count Application.ScreenUpdating = False 'enhance the performance For Pointer = 2 To MainWorkBook.Sheets.Count Set NewWorkBook = Workbooks.Add MainWorkBook.Sheets(Pointer).Copy After:=NewWorkBook.Sheets(1) Application.DisplayAlerts = False NewWorkBook.Sheets(1).Delete Application.DisplayAlerts = True With […]

如何提高缓慢读取文件的VBAmacros

在最近的一个项目中,我需要从包含大约5K行的文件中读取。 每行都有不同的字段,我需要将其中的一些收集到Excel中的特定单元格中。 一行的例子: DATA1; DATA2; DATA3; …..; dataN \ r N可以达到600。 目前我正在打开文件,并通过每一行循环,分裂“;” 并保存。 我需要的是一个例子: avarSplit = Split(sBuf, ";") Range("C" & i).Value = CDbl(avarSplit(meter)) 这往往是非常缓慢的,我已经有了, Application.Calculation = xlCalculationManual

VBA:分裂和连接数组和string

我正在处理一组看起来像这样的单元格: 我想要做的是通过每个国家的国家/地区列进行过滤,然后将每个制造商都join到一起,以便我们可以在另一个工作簿中筛选它们。 所以基本上,我想Join(m1, m2, m3) ,这就是我想要做到的: xRange是“制造商缩写”的栏目。 我也有If xCell… <> "" Then因为没有“上一个制造商缩写”在xRange所有条目 Dim tempMfr As String Dim temp2Mfr As String Dim stringArray() As String Dim arraytostring As String For Each xCell In xRange tempMfr = xCell If xCell.Offset(0, 2) <> "" Then temp2Mfr = xCell.Offset(0, 2) stringArray() = Split(temp2Mfr, ", ") arraytostring = Join(temp2Mfr & […]

将一列分成多列

我想知道是否有人可以build议如何将一个逗号分隔的string拆分为多个字段。 我一直在试图弄清楚这一点,但一直都很难find一个好的解决scheme。 (也在网上查询,似乎有几个接近,但不一定适合我所需要的) 比方说,我有一个工作表,称之为“示例”,并在工作表中有多行下的string,但都在列“A”。 20120112,aaa,bbb,ccc,3432 20120113,aaa,bbb,ccc 20120113,ddd,bb,ccc,ddd,eee,fff,ggg,hhhh 20120132,aaa,bbb,ccc 20120112,aaa,bbb,ccc 20120112,xxx,bbb,ggg,ggg,333 20120112,aaa,bbb,ccc 20120112,abbd,bbb,ccc 我如何创build一个将上面的代码拆分成多个列的macros。 只有几点 (1)我应该能够指定工作表名称,例如: 工作表(“示例”)。范围(A,A)' (2)列和行的数量是不固定的,所以我不知道在运行vba脚本之前有多less逗号分隔值和多less行。

使用公式将分隔的文本分隔到列

我看起来像这样的单元格中的string(可能有数百个) 713.00;482.00;337.00;530.00; 71.00;32.54;37.00;5300.30; 有4个数字,每个数字后面跟一个分号。 这些数字的长度会有所不同 我有第一个单元格(Split 1)的公式是: =LEFT(B2,(FIND(";",B2,1)-1)) 我只是无法弄清楚以下3个单元格(Split 2,3和4) 注意:这需要是一个公式而不是文本到列函数。 任何build议将不胜感激,如果需要更多的信息,请问! 🙂

拆分并添加文本EXCEL VBA

我想分割一些文本,然后将"_@"添加到分割文本中 例如。 S106-137-800_BOMS_0.xls > S106-137-800_BOMS_@ 0 这是我的代码到目前为止: k = InStr(str, "_") j = InStr(k + 1, str, "_") i = InStr(j + 1, str, ".") rw.Offset(0, 1) = Left(str, j – 1) rw.Offset(0, 2) = Mid(str, j + 1, i – j – 1) 有没有办法拆分和添加"_@如图所示?