Невозможно преобразовать числовой процент в строку - PullRequest
1 голос
/ 05 апреля 2019

Я пытаюсь запустить «случай выбора», где, если рассматриваемое значение относится к назначенным диапазонам, оно преобразует значение в строку:

EX: if pr = 70% in cell, он будет преобразован в строку как "70%", а не как 0,7

Я заметил, что при использовании только переменной-заполнителя она преобразует строку (т. Е. "p= = CStr(pr * 100 & "%")" vs "pr = CStr(pr * 100 & "%")"

Private RCN_pars, pr As Range  'databody range of parameters 

Select Case pr.Column
            Case Range("RCNS_U[Enhanced Contrast]").Column, 
     Range("RCNS_U[Recon Mode]").Column, _
            Range("RCNS_U[IQ Enhance]").Column, 
     Range("RCNS_U[Interval]").Column, Range("RCNS_U[Flip/Rotate]").Column
                GoTo NextCell
            Case Range("RCNS_U[ASiR-V]").Column, Range("RCNS_U[Phase]").Column  'convert percentages
                pr = CStr(pr * 100) & "%"
        End Select

pr определяется как числовое значение 70, а не "70%"

1 Ответ

1 голос
/ 05 апреля 2019

Попробуйте использовать .NumberFormat свойство Range, например:

pr.NumberFormat = "0.00%"

В вашем коде это будет выглядеть так:

Private RCN_pars, pr As Range  'databody range of parameters 

Select Case pr.Column
    Case Range("RCNS_U[Enhanced Contrast]").Column, _ 
        Range("RCNS_U[Recon Mode]").Column, _
        Range("RCNS_U[IQ Enhance]").Column, _
        Range("RCNS_U[Interval]").Column, Range("RCNS_U[Flip/Rotate]").Column
        GoTo NextCell
    Case Range("RCNS_U[ASiR-V]").Column, Range("RCNS_U[Phase]").Column  'convert percentages
        pr.NumberFormat = "0.00%"
End Select
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...