Цель состоит в том, чтобы отделить этот вид строки от конкретного значения "INPR0002268" означает, что как только вы найдете 1-й ноль, строка должна напечатать "0002268"
Поэтому я пытаюсь прочитать строку из определенной ячейки, а затем разбить ее с нуля и распечатать значение в другой ячейке
Проблема-> в локальном окне, когда я запускаю код, он показывает правильное значение "0002268", но когда я вставляю то же самое значение в другую ячейку, он показывает "2268".Пожалуйста, дайте мне знать, какая может быть возможная причина.
Sub newid() Dim FirstZero As Long Dim Name As Variant Sheet2.Activate Columns("E:E").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove Range("E1").Value = "Orgnization ID" Numberofrow = Cells(Rows.Count, 1).End(xlUp).Row For i = 1 To Numberofrow Y = Range("A1").Offset(i, 0).Value Lengthofstring = Len(Y) FirstZero = InStr(1, Y, 0) Debug.Print FirstZero Name = Right(Y, Lengthofstring - (FirstZero - 1)) Range("A1").Offset(i, 0).Offset(0, 4).Value = Name Next i End Sub
Что я уже пробовал:
Sub newid() Dim FirstZero As Long Dim Name As Variant Sheet2.Activate Columns("E:E").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove Range("E1").Value = "Orgnization ID" Numberofrow = Cells(Rows.Count, 1).End(xlUp).Row For i = 1 To Numberofrow Y = Range("A1").Offset(i, 0).Value Lengthofstring = Len(Y) FirstZero = InStr(1, Y, 0) Debug.Print FirstZero Name = Right(Y, Lengthofstring - (FirstZero - 1)) Range("A1").Offset(i, 0).Offset(0, 4).Value = Name Next i End Sub