Как да трансформирам интелигентно съдържанието на клетки с числа със зелен индикатор за проблем в горния им ляв ъгъл?
Здравейте! Данните в приложения пример са от Excel 97-2003, но са отворени с Excel 2010. Десетичният разделител в регионалните настройки на Windows, както и тези в самия Excel е . (точка). Въпреки това, както се вижда от примера данните в диапазона F2 до I6 за Excel не са числа. Естествено, аз лесно мога да ги превърна в числа, използвайки падащото меню (или съветник), което се вижда и на примера, но ако този проблем е разпръснат хаотично из много голяма таблица, аз трябва да разчитам на окото си, за да видя клетките, в чийто горен ляв ъгъл има зелен триъгълник – индикация за подобен род проблеми. Пробвах да форматирам проблемните клетки в number или accounting, но без резултат. Съгласно текста на съобщението от падащото меню: „The number in this cell is formatted as text or preceded by an apostrrophe“ („Числото в тази клетка е форматирано като текст или е предшествано от апостроф“) проверих, дали наистина в началото на някоя от тези клетки не стои знакът апостроф. Оказа се, че такъв няма. Данните в тези клетки се превръщат в число и след двоен клик („влизане в клетката“), както и след единичен клик в полето за формули под рибън разделите. Въпросът ми е: как мога да обработя/форматирам по някакъв начин определени клетки от голяма таблица, в които би могло да има подобен проблем без да ги търся визуално с очите си по зеления знак в горния им ляв ъгъл и след това да съм сигурен, че съдържанията на тези клетки ще бъдат числа за Excel.
Аз лично си правя една допълнителна колона и умножавам по 1. След това махам формулата и си ги превръщам в числа. Поне при мен действа.
Здравейте,
Ето няколко варианта:
1. Напиши някъде в някоя клетка числото 1 (снимка 1 позиция 1). Обеди се че е число т.е. стойността е число и формата е число (снимка 1 позиция 2).
Селектирай клетка (снимка 2 позиция 1) и избери десен бутон, от падащото меню избери Copy (снимка 2 позиция 2) или директно избери Ctrl + C от клавиатурата.
След това селектираш диапазона/ите от клетки, които искаш да преобразуваш от текст в числа (снимка 3 позиция 1 и 2).Обръщам внимание копирането на клетката със стойност 1 все още е активно и в селекцията участва и самата клетка (снимка 3 позиция 3).
След селекцията кликваме с десен бутон и избираме Paste Special (снимка 4 позиция 1).
След избора на Paste Special, ни се показва прозорец (снимка 5 позиция 1) в който в раздела Operation (снимка 5 позиция 2) слагаме отметка на Multiply (снимка 5 позиция 3).
Резултата е показан на снимка 6 позиция 1. Всички текстови стойности са числа.
2. Може да изпозлваш този VBA код:
Sub Enter_Values()
For Each xCell In Selection
Selection.NumberFormat = "0.00" 'Note: The "0.00" determines the number of decimal places.
xCell.Value = xCell.Value
Next xCell
End Sub
Няма нищо нестандартно в него, слагаш като отделен модул в VBA прозореца на Excel (снимка 7 позиция 1 и 2).
Селектираш диапазона от клетки, в който искаш да превърнеш свички стойности от текст в числа (снимка 8 позиция 1)
Стартираш VBA кода (снимка 9 позиция 1) посредством бутона.
Резултата е на снимка 10 позиция 1. Слектирания диапазон вече е с числа не с текст.
Не си задължен дипазона да е едно цяло, може да избереш отделни диапазони в рамките на листа (sheet).
3. Подобен е на този по-горе, само че тук може да селектираш само един единствен диапазон, не може да имаш няколко както горе при VBA скрипта.
Правиш селекция на определен дипазон (снимка 11 позиция 1), след това отиваш на иконката която се е появила в горния ляв ъгъл на селекцията (снимка 11 позиция 2), кликваш върху него и от падащото меню избираш Convert to number (снимка 11 позиция 3).
Резултата е на снимка 12 позиция 1.
Още един недостатък на този вариант работи ако първата горна лява клетка е със стойност текст вместо число на селектирания участък.
4. Този вариант ти го препоръчвам ако клетките в които имаш стойност - текста и искаш да стане на число, са много разпилени из Excel листа (sheet -a) снимка 13 позиция 1,2,3,4 ...).
Съответно за да не селектираш толкова много клетки или да ги търсиш в листа, т.к. сега се виждат но ако между тях има текст или числа, следва да пропуснеш някоя.
Селектирай една от клетките (снимка 14 позиция 1), след това отиди на Ribbon раздела Formulas (снимка 14 позиция 2), след това кликни на бутона Error Checking (снимка 14 позиция 3).Ще ти се отвори прозореца Error Checking (снимка 14 позиция 4), там има един бутон Convert to number (снимка 14 позиция 5), кликайки на бутона след числото стойността на клетката която избрахме в началото от текст да стане на число (снимка 14 позиция 6).След което динамичния прозорец ни препраща в следващата клетка (снимка 14 позиция 7) в която има подобен проблем, отново натискаме Convert to Number (снимка 14 позиция 8).
Най-вероятно това е варианта, който би бил най - удачен в случая описан по-горе от вас.
Надявам се да съм бил полезен с отговора.
Едно предложение.Въведете в някоя клетка цифрата 1, маркирайте клетката и я копирайте (Ctrl+C). Маркирайте диапазона или всички клетки, в които има зелен триъгълник.Отидете на Paste, Paste special, отметнете Multiplay и натиснете ОК. Резултат Единицата се изтрива след това. Дано е станало ясно! Лек ден и успехи!
Г- н Кръстев, писали сме по едно и също време и Вие сте показал същият метод. Нека написаното от мен НЕ СЕ СЧИТА, тъй като се повтаря1Извинения! Лек ден и успехи!
Един друг начин, ако е възможно да се направи. Умножаваме с минус по минус, както се вижда в клетка С3 и копираме формулата надолу по редовете. Дано е станало ясно! Лек ден и успехи!
И друг начин - просто ДАННИТЕ СЕ ПРЕПИСВАТ! Лек ден и успехи!
Здравейте, г-н Никола Петров.
Метода, който сте показал наистина е един от методите, който съм показал по-горе ....и по-точно Метод 1.
Няма проблем, че сте описал този метод още веднъж. Никога едно допълнение към дадена тема не е излишно.Допълването, разяснението на някой от темите е доста ценно, понякога някой може да не е разбрал едно обяснение дадено от даден човек, НО от едно такова кратко допълнение (разяснение) ще помогне.
Здравейте, на мен лично тези варианти са ми малко сложни и ползвам следното. Превръщам клетките във валута, така ако не видя лв. още веднъж съм сигурна, че въпросното число, не е число. Случвало ми се е да нямам зеленото триъгълниче и въпреки това изглеждащите цифри не са числа. Така бързо проверявам дали числата са числа. След което натискам text to columns и директно finish. Цифрите вече са числа, след което махам валутата, ако не ми трябва.
@ Юлия Димова.
Да още един вариант за спраяне с проблема :)
На маркираните клетки, които трябва да преобразувам, задавам формат Number (Числа) без десетични цифри (ил толкова, колкото трябва да има числото). След това (докато са маркирани) стартирам командата Replace (Замяна) на 2 интервала с 1 интервал. Повтарям това действие докато всички замени бъдат извършени. Предполагам, че когато всички излишни интервали изчезнат, ще изчезнат и зелените ъгълчета. При мен поне работи.