VBA игнорировать форматирование ячеек при добавлении указанного c числа с использованием пользовательской формы - PullRequest
0 голосов
/ 02 февраля 2020

У меня есть пользовательская форма, целью которой является генерация чисел (ТОЛЬКО 2 цифры).

Я отформатировал столбец 'C' в Excel, чтобы добавить 0 в конце любого сгенерированного числа.

Итак, если мой сгенерированный номер «5», я буду видеть «50».

Теперь, для проблемы, Если мой номер 6, я не знаю не хочу, чтобы Excel добавил 0 (60).

Буквально только для числа 6.

Есть ли способ кодировать это с VBA?

РЕДАКТИРОВАТЬ:

If TextBox4.Value = True Then

    message = MsgBox("Generate this number ? " & TextBox1 & TextBox2 & "." & TextBox3, vbYesNo + vbQuestion, "Number Generator")

    If message = vbYes Then

        Sheets("Sheet3").Range("B4").Select
        ActiveCell.EntireRow.Insert Shift:=xlDown

        Sheets("Sheet3").Range("B4:F4").Select
        Selection.Borders.Weight = xlThin

        Sheets("Sheet3").Range("B4").Select
        ActiveCell.Value = UCase(TextBox2)

        Sheets("Sheet3").Range("A4").Select
        Selection.Borders.Weight = xlThin
        ActiveCell.Value = UCase(TextBox1)

        Sheets("Sheet3").Range("C4").Select
        Selection.Borders.Weight = xlThin
        ActiveCell.Value = "." & TextBox3

        Sheets("Sheet3").Range("G4").Select
        Selection.Borders.Weight = xlThin
        ActiveCell.Value = "RÉVISION"


        Sheets("Sheet3").Range("H4").Select
        Selection.Borders.Weight = xlThin
        ActiveCell.Value = TextBox4.Value

        MsgBox ("The Number is : " & Sheet4.Cells(4, "A").Value & Format$(Sheet4.Cells(4, "B").Value, "0000#") & "." & Sheet4.Cells(4, "C"))

    End If


Else
    Exit Sub
End If


End If
End If

1 Ответ

3 голосов
/ 02 февраля 2020

Поскольку в столбце C: C есть один фрагмент кода, измените его следующим образом:

Вместо:

 Sheets("Sheet3").Range("C4").Select
 Selection.Borders.Weight = xlThin
 ActiveCell.Value = "." & TextBox3

Попробуйте это, пожалуйста:

If TextBox3.Text = "6" then
    Sheets("Sheet3").Range("C4").NumberFormat = "@"
end if
With Sheets("Sheet3").Range("C4")
   .Borders.Weight = xlThin
   .Value = "." & TextBox3.Text
End With
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...