Здравствуйте. Очень нужна Ваша помощь. Пытаюсь сделать так чтобы при копировании данных из исходной книги в новую значения ячеек в двух столбцах были умноженными на 1000. Пробовал различные варианты, но не один не получилось заставить работать. Надеюсь на Вашу помощь. Спасибо. Прикрепляю исходный файл. В коде выделил места какие столбцы необходимо умножить. И еще такой вопрос, мне надо сделать условие для проверки перед копирование информации с одной книги на другую (проверка столбца Z, если не пустая строка в этом столбце, то копировать в новую книгу) Как я понимаю это надо делать через if, или есть еще другие варианты?) [vba]
Код
Private Sub Command1_Click()
Dim objExcel, objWorkbook Set objExcel = CreateObject("EXCEL.APPLICATION") objExcel.Visible = False 'Ïóòü ê èñõîäíîìó ôàéëó Set objWorkbook = objExcel.Workbooks.Open("C:\Users\Varina_LI\Desktop\ïðèìåð\ms21.xlsx")
Dim d As Long Application.ScreenUpdating = False Dim shSrc As Worksheet, shRes As Worksheet Dim lrRes As Long Dim New_Wb As Workbook Dim i As Integer Dim x As Integer Dim result As Integer Application.ScreenUpdating = False Set New_Wb = Workbooks.Add New_Wb.Activate 'Ïóòü ãäå ñîçäàåòñÿ íîâûé ôàéë New_Wb.SaveAs FileName:="C:\Users\Varina_LI\Desktop\ïðèìåð\maket17_ms21.xlsx" New_Wb.Close True Set shSrc = ActiveSheet 'Äîëæíû ñîâïàäàòü Set shRes = Workbooks.Open("C:\Users\Varina_LI\Desktop\ïðèìåð\maket17_ms21.xlsx").Worksheets(1)
shSrc.Activate d = shSrc.Cells(Rows.Count, 5).End(xlUp).Row
shRes.Range("A2 :A" & d & "") = "17" shRes.Range("B2 :B" & d & "") = "001" shRes.Range("C2 :C" & d & "") = "2" shRes.Range("D2 :D" & d & "") = "11" shRes.Range("G2 :G" & d & "") = "11" shRes.Range("M2 :M" & d & "") = "00" shRes.Range("AA2 :AA" & d & "") = "1"
shSrc.Range("B2:B" & d & "").Copy shRes.Cells(lrRes, 5).PasteSpecial xlPasteValues shSrc.Range("C2:C" & d & "").Copy shRes.Cells(lrRes, 6).PasteSpecial xlPasteValues shSrc.Range("J2:J" & d & "").Copy shRes.Cells(lrRes, 8).PasteSpecial xlPasteValues shSrc.Range("K2:K" & d & "").Copy shRes.Cells(lrRes, 9).PasteSpecial xlPasteValues
' \/ здесь надо умножить *1000 ' Cells(10000, 10000) = "1000" Dim c As Range shSrc.Range("L2:L" & d & "").Copy shRes.Cells(lrRes, 10).PasteSpecial xlPasteValues
' Set c = Cells.SpecialCells(xlCellTypeBlanks).Cells(1, 1) ' ' c = 341 ' c.Copy ' Range("J2:J4").PasteSpecial Operation:=xlMultiply
' c.Clear
'xlPasteValues Operation:=xlMultiply ' shSrc.Range ("L2:L" & d & "* 1000") 'Dim rng As Range ' Dim avarItems As Variant ' Dim intI As Variant
' For intI = 1 To UBound(avarItems, 1) ' avarItems(intI, 1) = avarItems(intI, 1) * 1000 'Next intI
'rng = avarItems
'---------------------------------------
shSrc.Range("N2:N" & d & "").Copy shRes.Cells(lrRes, 11).PasteSpecial xlPasteValues shSrc.Range("O2:O" & d & "").Copy shRes.Cells(lrRes, 12).PasteSpecial xlPasteValues shSrc.Range("Y2:Y" & d & "").Copy shRes.Cells(lrRes, 14).PasteSpecial xlPasteValues shSrc.Range("Z2:Z" & d & "").Copy shRes.Cells(lrRes, 15).PasteSpecial xlPasteValues
' \/ здесь надо умножить *1000 shSrc.Range("AC2:AC" & d & "").Copy shRes.Cells(lrRes, 16).PasteSpecial xlPasteValues '---------------------------------------
shSrc.Range("AI2:AI" & d & "").Copy shRes.Cells(lrRes, 17).PasteSpecial xlPasteValues shSrc.Range("AJ2:AJ" & d & "").Copy shRes.Cells(lrRes, 18).PasteSpecial xlPasteValues shSrc.Range("AK2:AK" & d & "").Copy shRes.Cells(lrRes, 19).PasteSpecial xlPasteValues shSrc.Range("AL2:AL" & d & "").Copy shRes.Cells(lrRes, 20).PasteSpecial xlPasteValues shSrc.Range("AM2:AM" & d & "").Copy shRes.Cells(lrRes, 21).PasteSpecial xlPasteValues shSrc.Range("AN2:AN" & d & "").Copy shRes.Cells(lrRes, 22).PasteSpecial xlPasteValues shSrc.Range("AO2:AO" & d & "").Copy shRes.Cells(lrRes, 23).PasteSpecial xlPasteValues shSrc.Range("AP2:AP" & d & "").Copy shRes.Cells(lrRes, 24).PasteSpecial xlPasteValues
Application.CutCopyMode = False shRes.Parent.Close 1 Application.ScreenUpdating = True MsgBox "Ìàêåò 17 äëÿ ÌÑ21 óñïåøíî ñôîðìèðîâàí" objExcel.ActiveWorkbook.Close savechanges:=False End Sub
[/vba]
Здравствуйте. Очень нужна Ваша помощь. Пытаюсь сделать так чтобы при копировании данных из исходной книги в новую значения ячеек в двух столбцах были умноженными на 1000. Пробовал различные варианты, но не один не получилось заставить работать. Надеюсь на Вашу помощь. Спасибо. Прикрепляю исходный файл. В коде выделил места какие столбцы необходимо умножить. И еще такой вопрос, мне надо сделать условие для проверки перед копирование информации с одной книги на другую (проверка столбца Z, если не пустая строка в этом столбце, то копировать в новую книгу) Как я понимаю это надо делать через if, или есть еще другие варианты?) [vba]
Код
Private Sub Command1_Click()
Dim objExcel, objWorkbook Set objExcel = CreateObject("EXCEL.APPLICATION") objExcel.Visible = False 'Ïóòü ê èñõîäíîìó ôàéëó Set objWorkbook = objExcel.Workbooks.Open("C:\Users\Varina_LI\Desktop\ïðèìåð\ms21.xlsx")
Dim d As Long Application.ScreenUpdating = False Dim shSrc As Worksheet, shRes As Worksheet Dim lrRes As Long Dim New_Wb As Workbook Dim i As Integer Dim x As Integer Dim result As Integer Application.ScreenUpdating = False Set New_Wb = Workbooks.Add New_Wb.Activate 'Ïóòü ãäå ñîçäàåòñÿ íîâûé ôàéë New_Wb.SaveAs FileName:="C:\Users\Varina_LI\Desktop\ïðèìåð\maket17_ms21.xlsx" New_Wb.Close True Set shSrc = ActiveSheet 'Äîëæíû ñîâïàäàòü Set shRes = Workbooks.Open("C:\Users\Varina_LI\Desktop\ïðèìåð\maket17_ms21.xlsx").Worksheets(1)
shSrc.Activate d = shSrc.Cells(Rows.Count, 5).End(xlUp).Row
shRes.Range("A2 :A" & d & "") = "17" shRes.Range("B2 :B" & d & "") = "001" shRes.Range("C2 :C" & d & "") = "2" shRes.Range("D2 :D" & d & "") = "11" shRes.Range("G2 :G" & d & "") = "11" shRes.Range("M2 :M" & d & "") = "00" shRes.Range("AA2 :AA" & d & "") = "1"
shSrc.Range("B2:B" & d & "").Copy shRes.Cells(lrRes, 5).PasteSpecial xlPasteValues shSrc.Range("C2:C" & d & "").Copy shRes.Cells(lrRes, 6).PasteSpecial xlPasteValues shSrc.Range("J2:J" & d & "").Copy shRes.Cells(lrRes, 8).PasteSpecial xlPasteValues shSrc.Range("K2:K" & d & "").Copy shRes.Cells(lrRes, 9).PasteSpecial xlPasteValues
' \/ здесь надо умножить *1000 ' Cells(10000, 10000) = "1000" Dim c As Range shSrc.Range("L2:L" & d & "").Copy shRes.Cells(lrRes, 10).PasteSpecial xlPasteValues
' Set c = Cells.SpecialCells(xlCellTypeBlanks).Cells(1, 1) ' ' c = 341 ' c.Copy ' Range("J2:J4").PasteSpecial Operation:=xlMultiply
' c.Clear
'xlPasteValues Operation:=xlMultiply ' shSrc.Range ("L2:L" & d & "* 1000") 'Dim rng As Range ' Dim avarItems As Variant ' Dim intI As Variant
' For intI = 1 To UBound(avarItems, 1) ' avarItems(intI, 1) = avarItems(intI, 1) * 1000 'Next intI
'rng = avarItems
'---------------------------------------
shSrc.Range("N2:N" & d & "").Copy shRes.Cells(lrRes, 11).PasteSpecial xlPasteValues shSrc.Range("O2:O" & d & "").Copy shRes.Cells(lrRes, 12).PasteSpecial xlPasteValues shSrc.Range("Y2:Y" & d & "").Copy shRes.Cells(lrRes, 14).PasteSpecial xlPasteValues shSrc.Range("Z2:Z" & d & "").Copy shRes.Cells(lrRes, 15).PasteSpecial xlPasteValues
' \/ здесь надо умножить *1000 shSrc.Range("AC2:AC" & d & "").Copy shRes.Cells(lrRes, 16).PasteSpecial xlPasteValues '---------------------------------------
shSrc.Range("AI2:AI" & d & "").Copy shRes.Cells(lrRes, 17).PasteSpecial xlPasteValues shSrc.Range("AJ2:AJ" & d & "").Copy shRes.Cells(lrRes, 18).PasteSpecial xlPasteValues shSrc.Range("AK2:AK" & d & "").Copy shRes.Cells(lrRes, 19).PasteSpecial xlPasteValues shSrc.Range("AL2:AL" & d & "").Copy shRes.Cells(lrRes, 20).PasteSpecial xlPasteValues shSrc.Range("AM2:AM" & d & "").Copy shRes.Cells(lrRes, 21).PasteSpecial xlPasteValues shSrc.Range("AN2:AN" & d & "").Copy shRes.Cells(lrRes, 22).PasteSpecial xlPasteValues shSrc.Range("AO2:AO" & d & "").Copy shRes.Cells(lrRes, 23).PasteSpecial xlPasteValues shSrc.Range("AP2:AP" & d & "").Copy shRes.Cells(lrRes, 24).PasteSpecial xlPasteValues
Application.CutCopyMode = False shRes.Parent.Close 1 Application.ScreenUpdating = True MsgBox "Ìàêåò 17 äëÿ ÌÑ21 óñïåøíî ñôîðìèðîâàí" objExcel.ActiveWorkbook.Close savechanges:=False End Sub
Таким способом, как вы пытаетесь, у Вас не получится скопированные значения и сразу же с ними провести какую-либо операцию (умножение, например, на 1000). [vba]
Код
shSrc.Range("AI2:AI" & d & "").Copy shRes.Cells(lrRes, 17).PasteSpecial xlPasteValues
[/vba] данное выражение, по сути, это копирование массива (области) ячеек именно, а не значений. Чтобы вы могли скопировать и на что-то умножить, удобнее пользоваться массивами: [vba]
Код
Dim scSrcArr() ' Объявление массива ....
Redim scSrcArr(d, 4) ' Задаём размерность и определяем 2-мерный массив, в котором размерность d - я принял за d ячеек, которые вы планируете записать, а размерность 4 - количество столбцов из которых вы планируете записать данные. Причём сразу оговорюсь, на самом деле у массива размерность будет выше чем требуется (поскольку Вы записываете данные не с первой строки, ну и помимо всего у массивов в данном случае есть и нулевая размерность. Но для данной задачи, думаю, это не принципиально. For i = 2 to d scSrcArr(i, 1) = shSrc.Range("N" & d )*1000 ' можно записывая данные в массив сразу умножать или... scSrcArr(i, 2) = shSrc.Range("O" & d )*1000 scSrcArr(i, 3) = shSrc.Range("Y" & d )*1000 scSrcArr(i, 4) = shSrc.Range("Z" & d )*1000 next i For i = 2 to d shRes.Cells(lrRes, 11)=scSrcArr(i, 1) ' или можно умножать тут, записывая данные из массива. shRes.Cells(lrRes, 12)=scSrcArr(i, 2) shRes.Cells(lrRes, 14)=scSrcArr(i, 3) shRes.Cells(lrRes, 15)=scSrcArr(i, 4) next i
[/vba] Только сейчас заметил, что не для тех ячеек привёл пример, но там всё по аналогии...)
Таким способом, как вы пытаетесь, у Вас не получится скопированные значения и сразу же с ними провести какую-либо операцию (умножение, например, на 1000). [vba]
Код
shSrc.Range("AI2:AI" & d & "").Copy shRes.Cells(lrRes, 17).PasteSpecial xlPasteValues
[/vba] данное выражение, по сути, это копирование массива (области) ячеек именно, а не значений. Чтобы вы могли скопировать и на что-то умножить, удобнее пользоваться массивами: [vba]
Код
Dim scSrcArr() ' Объявление массива ....
Redim scSrcArr(d, 4) ' Задаём размерность и определяем 2-мерный массив, в котором размерность d - я принял за d ячеек, которые вы планируете записать, а размерность 4 - количество столбцов из которых вы планируете записать данные. Причём сразу оговорюсь, на самом деле у массива размерность будет выше чем требуется (поскольку Вы записываете данные не с первой строки, ну и помимо всего у массивов в данном случае есть и нулевая размерность. Но для данной задачи, думаю, это не принципиально. For i = 2 to d scSrcArr(i, 1) = shSrc.Range("N" & d )*1000 ' можно записывая данные в массив сразу умножать или... scSrcArr(i, 2) = shSrc.Range("O" & d )*1000 scSrcArr(i, 3) = shSrc.Range("Y" & d )*1000 scSrcArr(i, 4) = shSrc.Range("Z" & d )*1000 next i For i = 2 to d shRes.Cells(lrRes, 11)=scSrcArr(i, 1) ' или можно умножать тут, записывая данные из массива. shRes.Cells(lrRes, 12)=scSrcArr(i, 2) shRes.Cells(lrRes, 14)=scSrcArr(i, 3) shRes.Cells(lrRes, 15)=scSrcArr(i, 4) next i
[/vba] Только сейчас заметил, что не для тех ячеек привёл пример, но там всё по аналогии...)Roman777
(проверка столбца Z, если не пустая строка в этом столбце, то копировать в новую книгу) Как я понимаю это надо делать через if, или есть еще другие варианты?)
тут просто не очень понятно. Вы хотите проверять каждую Zi -ю ячейку и если она не пустая, записывать её в Zi-ю ячейку другой книги? Почему не хотите копировать все и пустые и непустые?
(проверка столбца Z, если не пустая строка в этом столбце, то копировать в новую книгу) Как я понимаю это надо делать через if, или есть еще другие варианты?)
тут просто не очень понятно. Вы хотите проверять каждую Zi -ю ячейку и если она не пустая, записывать её в Zi-ю ячейку другой книги? Почему не хотите копировать все и пустые и непустые?Roman777
Roman777, Нужно проверять все строки по Zi ячейке и если она не пустая то копировать столбцы. А если пустая то такие строки не копировать. Не получается ясней сформулировать). Проще говоря, надо копировать строки из столбцов только тогда когда столбец Z не пустой)
Roman777, Нужно проверять все строки по Zi ячейке и если она не пустая то копировать столбцы. А если пустая то такие строки не копировать. Не получается ясней сформулировать). Проще говоря, надо копировать строки из столбцов только тогда когда столбец Z не пустой)cresh12
Сообщение отредактировал cresh12 - Среда, 23.09.2015, 10:41
Roman777, а еще можно уточнить, вот пытаюсь переделать программу в тот вариант который Вы предложили. [vba]
Код
Dim scSrcArr() ReDim scSrcArr(d, 10) For i = 2 To d scSrcArr(i, 1) = shSrc.Range("B2 :B" & d & "") scSrcArr(i, 2) = shSrc.Range("C2 :C" & d & "") Next i For i = 2 To d shRes.Cells(lrRes, 5) = scSrcArr(i, 1) shRes.Cells(lrRes, 6) = scSrcArr(i, 2) Next i
[/vba] Пока только 2 столбца для примера пробую. Так вот подскажите пожалуйста почему переносится только одна ячейка из каждого столбца?) и можно ли сделать с помощью массива чтобы переносился весь столбец?)
Roman777, а еще можно уточнить, вот пытаюсь переделать программу в тот вариант который Вы предложили. [vba]
Код
Dim scSrcArr() ReDim scSrcArr(d, 10) For i = 2 To d scSrcArr(i, 1) = shSrc.Range("B2 :B" & d & "") scSrcArr(i, 2) = shSrc.Range("C2 :C" & d & "") Next i For i = 2 To d shRes.Cells(lrRes, 5) = scSrcArr(i, 1) shRes.Cells(lrRes, 6) = scSrcArr(i, 2) Next i
[/vba] Пока только 2 столбца для примера пробую. Так вот подскажите пожалуйста почему переносится только одна ячейка из каждого столбца?) и можно ли сделать с помощью массива чтобы переносился весь столбец?)cresh12
cresh12, Вот переделал Ваш код, на сколько понял [vba]
Код
Sub Click() Dim objExcel, objWorkbook As Workbook Set objExcel = CreateObject("EXCEL.APPLICATION") objExcel.Visible = False Set objWorkbook = objExcel.Workbooks.Open(ThisWorkbook.Path & "\ms21.xlsx")
With objWorkbook.ActiveSheet d = .Cells(.Rows.Count, 5).End(xlUp).Row arrSrc = .Range("A1 :AP" & d).Value End With
Dim arrRes() ReDim arrRes(1 To UBound(arrSrc), 1 To UBound(arrSrc, 2)) r = 1 For i = 1 To UBound(arrSrc) If i = 1 Then For j = 1 To UBound(ColNames) arrRes(r, j) = ColNames(j) Next j r = r + 1 ElseIf Not arrSrc(i, 6) = "" Then For j = 1 To UBound(arrSrc, 2) Data = "" Select Case j Case 1 Data = "17" Case 4 Data = "11" Case 7 Data = "11" Case 13 Data = "00" Case 27 Data = "1" Case 12 ' умножение на 1000 Data = Val(arrSrc(i, j)) * 1000 Case Else Data = arrSrc(i, j) End Select
arrRes(r, j) = Data Next j r = r + 1 End If Next i
Dim New_Wb As Workbook Set New_Wb = Workbooks.Add New_Wb.ActiveSheet.Range("A1").Resize(UBound(arrRes), UBound(arrRes, 2)).Value = arrRes New_Wb.SaveAs Filename:=ThisWorkbook.Path & "\maket17_ms21.xlsx" MsgBox "Макет 17 для МС21 успешно сформирован" End Sub
[/vba] Файл поместите в одну папку с "ms21.xlsx" и нажмите кнопку
cresh12, Вот переделал Ваш код, на сколько понял [vba]
Код
Sub Click() Dim objExcel, objWorkbook As Workbook Set objExcel = CreateObject("EXCEL.APPLICATION") objExcel.Visible = False Set objWorkbook = objExcel.Workbooks.Open(ThisWorkbook.Path & "\ms21.xlsx")
With objWorkbook.ActiveSheet d = .Cells(.Rows.Count, 5).End(xlUp).Row arrSrc = .Range("A1 :AP" & d).Value End With
Dim arrRes() ReDim arrRes(1 To UBound(arrSrc), 1 To UBound(arrSrc, 2)) r = 1 For i = 1 To UBound(arrSrc) If i = 1 Then For j = 1 To UBound(ColNames) arrRes(r, j) = ColNames(j) Next j r = r + 1 ElseIf Not arrSrc(i, 6) = "" Then For j = 1 To UBound(arrSrc, 2) Data = "" Select Case j Case 1 Data = "17" Case 4 Data = "11" Case 7 Data = "11" Case 13 Data = "00" Case 27 Data = "1" Case 12 ' умножение на 1000 Data = Val(arrSrc(i, j)) * 1000 Case Else Data = arrSrc(i, j) End Select
arrRes(r, j) = Data Next j r = r + 1 End If Next i
Dim New_Wb As Workbook Set New_Wb = Workbooks.Add New_Wb.ActiveSheet.Range("A1").Resize(UBound(arrRes), UBound(arrRes, 2)).Value = arrRes New_Wb.SaveAs Filename:=ThisWorkbook.Path & "\maket17_ms21.xlsx" MsgBox "Макет 17 для МС21 успешно сформирован" End Sub
[/vba] Файл поместите в одну папку с "ms21.xlsx" и нажмите кнопкуmiver
miver, Спасибо, но подскажите пожалуйста что нужно изменить чтобы информация копировалась с некоторым соответствием: например из 2 столбца исходной книги в 5 столбец новой, из 23 в 15?
miver, Спасибо, но подскажите пожалуйста что нужно изменить чтобы информация копировалась с некоторым соответствием: например из 2 столбца исходной книги в 5 столбец новой, из 23 в 15?cresh12
Просто добавте правило при переборе исходных столбиков [vba]
Код
Select Case j Case 5 Data = arrSrc(i, 2) Case 15 Data = arrSrc(i, 23) Case 1 Data = "17" Case 4 Data = "11" Case 7 Data = "11" Case 13 Data = "00" Case 27 Data = "1" Case 12 ' умножение на 1000 Data = Val(arrSrc(i, j)) * 1000 Case Else Data = arrSrc(i, j) End Select
[/vba] Немного перепутал индексы
Просто добавте правило при переборе исходных столбиков [vba]
Код
Select Case j Case 5 Data = arrSrc(i, 2) Case 15 Data = arrSrc(i, 23) Case 1 Data = "17" Case 4 Data = "11" Case 7 Data = "11" Case 13 Data = "00" Case 27 Data = "1" Case 12 ' умножение на 1000 Data = Val(arrSrc(i, j)) * 1000 Case Else Data = arrSrc(i, j) End Select
miver, Это гениально)) Спасибо большое)) Только один недостаток есть, при умножении на 1000 в тех ячейках где целое число все происходит без проблем, а там где дробь, например 0,235, то число обнуляется(
miver, Это гениально)) Спасибо большое)) Только один недостаток есть, при умножении на 1000 в тех ячейках где целое число все происходит без проблем, а там где дробь, например 0,235, то число обнуляется(cresh12
Прошу прощения, что надоедаю, но возник такой вопрос, возможно ли заменить конструкцию чтобы было по красивей?) [vba]
Код
Case 14 If arrSrc(i, 22) <> "" Then Data = arrSrc(i, 25) Else Data = "00" Case 15 If arrSrc(i, 22) <> "" Then Data = arrSrc(i, 26) Else Data = "0000000" Case 16 If arrSrc(i, 22) <> "" Then Data = arrSrc(i, 29) * 1000 Else Data = "000000000" Case 17 If arrSrc(i, 22) <> "" Then Data = arrSrc(i, 35) Else Data = "000"
[/vba] пробовал использовать Select Case, но т.к. необходимо несколько Else она не заработала) Отбой, все прекрасно работает и так. p.s. не знаю как удалить сообщение
Прошу прощения, что надоедаю, но возник такой вопрос, возможно ли заменить конструкцию чтобы было по красивей?) [vba]
Код
Case 14 If arrSrc(i, 22) <> "" Then Data = arrSrc(i, 25) Else Data = "00" Case 15 If arrSrc(i, 22) <> "" Then Data = arrSrc(i, 26) Else Data = "0000000" Case 16 If arrSrc(i, 22) <> "" Then Data = arrSrc(i, 29) * 1000 Else Data = "000000000" Case 17 If arrSrc(i, 22) <> "" Then Data = arrSrc(i, 35) Else Data = "000"
[/vba] пробовал использовать Select Case, но т.к. необходимо несколько Else она не заработала) Отбой, все прекрасно работает и так. p.s. не знаю как удалить сообщениеcresh12
Сообщение отредактировал cresh12 - Среда, 23.09.2015, 15:02
Data = IIf(arrSrc(i, 22) = "", "'00", arrSrc(i, 25))
[/vba]
[p.s.]Если хотите вставлять "00" в виде текста, то лучше ставить знак апострофа перед строкой - "'00". Excel часто преобразует строку в число и может отобразить - 0
Data = IIf(arrSrc(i, 22) = "", "'00", arrSrc(i, 25))
[/vba]
[p.s.]Если хотите вставлять "00" в виде текста, то лучше ставить знак апострофа перед строкой - "'00". Excel часто преобразует строку в число и может отобразить - 0miver
Если хотите вставлять "00" в виде текста, то лучше ставить знак апострофа перед строкой - "'00". Excel часто преобразует строку в число и может отобразить - 0
Отдельная благодарность за такой простой способ, а то все думал как сделать весь лист в текстовом формате:) Не сочтите за наглость, а не подскажите как сделать чтобы пустые строки заполнить нулями в нужном количестве, например 000?)
Если хотите вставлять "00" в виде текста, то лучше ставить знак апострофа перед строкой - "'00". Excel часто преобразует строку в число и может отобразить - 0
Отдельная благодарность за такой простой способ, а то все думал как сделать весь лист в текстовом формате:) Не сочтите за наглость, а не подскажите как сделать чтобы пустые строки заполнить нулями в нужном количестве, например 000?)cresh12