如何解决拆分单元格以填充两个文本框
我制作了一个包含两个文本框的用户表单。当我点击按钮时,两个文本框统一在一个单元格中。
Dim Dados As String,DadosLen As Integer
With Me
Dados = .caixanfnum.Text & Chr(10) & .caixanfdata.Text
DadosLen = Len(.caixanfnum.Text)
End With
With Sheets("-").Cells(linha,4)
.Font.Bold = False
.WrapText = True
.Value = Dados
.Characters(1,DadosLen).Font.Bold = True
End With
如何拆分此单元格以填充两个文本框?
解决方法
对于您的问题,拆分函数应该是最佳解决方案,但您需要一个分隔符。分隔符是字符串(单元格的值)将被拆分的位置的字符。
splitted_text = Split(Sheets("-").Cells(linha,4).Value,"your character")
这将返回一个数组。您使用 splitted_text(0)
和 splitted_text(1)
另一种可行的方法是 left
、mid
和 right
函数。
这仅在您在单元格中组合的字符串具有恒定长度时才有效。
first_string=Left(Sheets("-").Cells(linha,5)
second_string=Right(Sheets("-").Cells(linha,5)
middle_string=Mid(Sheets("-").Cells(linha,5,5)
第一个字符串将返回单元格中字符串的 5 个左字符,second_string 将返回字符串中的最后 5 个字符。 middle_string 会给你从字符串中的 5. 位置开始的五个字符,所以它会给你字符 5-9。
,你可以,
1. Split
Dim TempSplit AS Variant
TempSplit = Split(Sheets("-").Cells(linha,4),Chr(10))
.caixanfnum.Text = TempSplit(0)
.caixanfdata.Text = TempSplit(1)
这将是最直接的方式,也是我的首选方式。
如果您的文本框值中还有其他 Chr(10)
实例;
2.使用 Left
、Right
和 Len
函数(英尺 Mid
)
类似的东西;
.caixanfnum.Text = Left(Sheets("-").Cells(linha,DadosLen)
.caixanfdata.Text = Right(Sheets("-").Cells(linha,Len(Sheets("-").Cells(linha,4)) - DadosLen)
替代 Right
函数,您可以使用 Mid
代替:
Mid(Sheets("-").Cells(linha,DadosLen + 2
我不太喜欢,但会起作用。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。