Microsoft Excel Змінює значення клітин


0

Три клітинки в електронній таблиці свідомо змінюють свої значення (по суті, округлення). Наприклад, клітина, яка має читати 9969001500006276, перетворюється на 9969001500006270, пізніше, коли я знову відкриваю excel, я знаходжу номер як 9969001500006280.

Я спробував збільшити десяткові пробіли і змінити формати чисел і збільшити розмір комірки.
Я навіть спробував повністю зняти стовпчик і відтворити його.
Я також спробував редагувати в Google Sheets і SoftMaker FreeOffice і (здогадатися що) я отримав ті ж результати.

Проблема повторюється тільки з трьома клітинами, а інші клітини, здається, працюють досить добре. (Я - повноцінний любитель з електронними таблицями. І я використовую Office 2016.)


1
Excel використовує лише 15 значущих цифр і завершує всі інші. Якщо ви хочете "показати" більше, то вам потрібно зберегти номер як текст, а не справжнє число.
Scott Craner

@ScottCraner Навіть я думав, що це так. Але це також не працює. Excel, здається, перешкоджає збереженню клітин на власних шляхах, звичаях і традиціях. Іншим важливим фактом є те, що існують інші клітини, у яких цифри навіть більші, ніж ці (більшість з них у форматі «Загальні» або «Числові»), а excel добре з цими іншими.
Plyton Rexus

Просто тому, що він відформатований як загальний або номер, це не означає, що він не є текстом. Текст залишатиметься таким самим, якщо не має значення NUMBER форматі. Він може відображатися як число, але зберігатися як текст.
Scott Craner

Я розумію, що ви маєте на увазі. Я маю на увазі лише те, що я спробував використовувати загальні та числові формати після того, як я експериментував з текстовим форматом. Дякуємо за швидку відповідь.
Plyton Rexus

Дякуємо всім. Ви всі врятували мене від гарячих часів. Як ви вважаєте, це питання може бути закрито.
Plyton Rexus

Відповіді:


2

Відповідь:
Номери банківських рахунків - це лише "ідентифікація", а не те, що ви використовуєте в математичній формулі. Введіть їх із провідним ' і Excel не змінять їх у будь-який час. (Це дорівнює формату "TEXT")

Довідкова інформація:
Як сказав @ Скотт Кранер, для номерів є 16 обмеження точності цифр - через те, що НОМЕРИ використовуються в комп'ютері (64-бітний формат з плаваючою точкою, також відомий як "подвійна точність") .
Щоб пройти цей ліміт, потрібно використовувати спеціальні трюки та утиліти - якщо це буде НОМЕР, яке буде використано для напр. розрахунків.

Калькулятор командного рядка linux bc є однією такою корисності, і напр. Python має декілька способів обробки цифр високої точності.

Посилання: https://en.wikipedia.org/wiki/Double-precision_floating-point_format
"Між 2 ^ 52 = 4,503,599,627,370,496 і 2 ^ 53 = 9,007,199,254,740,992 числа, що репрезентуються, це цілі числа. Для наступного діапазону, від 2 ^ 53 до 2 ^ 54, все помножується на 2, так що представні числа є парними, і т.д. Навпаки, для попереднього діапазону від 25 ^ 1 до 2 ^ 52, інтервал становить 0,5 і т.д. "

У глибині пояснення:
https://docs.python.org/3/tutorial/floatingpoint.html


0

таку поведінку можна очікувати. Це відбувається завдяки тому, як такі номери зберігаються всередині SpreadSheets. Кожна клітина є контейнером деяких даних і метаданих. Як і коли ви зберігаєте дату, іноді ви бачите її як таке число 43475 якщо формат не застосовується, то ви перейдете і запитаєте короткий формат дати, і він буде відображатися як 10/01/2019. Настільки скомпрометовані повинні були бути зроблені для того, щоб відповідати цим даним і метаданим, для цих клітин у кожній електронній таблиці.

Потім про номер, на який я звернувся Цей відповідь Номери зберігаються у перемінних числа з плаваючою точкою, про які ви можете прочитати більше тут , подібні до поділу та наукової нотації. Вона буде генерувати рядок чисел, а потім розміщуватиме десяткове місце. Таким чином, останні пари цифр не так точні, через округлення останніх цифр.


Я дуже розумію вашу точку зору, але я збентежив Excel, щоб деякі клітини (з ще більшими номерами) зберегли свої первісні значення, але не три. Я вірю, так чи інакше, що я, можливо, випадково спровокував якусь формулу, яка впливає тільки на три клітини жертви. Крім того, я дуже відчайдушно шукаю вирішення цього питання
Plyton Rexus

@PlytonRexus Це не про Excel видалення щось. Мова йде про те, як номери зберігаються в Excel, а потім показують їх вам. Чи можу я запитати, з чим ви працюєте? Можливо, вам потрібні інші інструменти.
dmb

Звичайно. Електронна таблиця - це простий список банківських номерів A / C. Він не дуже форматований, але має багато об'єднаних комірок і обертань тексту. Вам може знадобитися щось інше? Я просто не розумію, чому Excel зберігатиме число в одній комірці, на відміну від інших, коли всі вони містять однакові дані. Дякуємо за швидку відповідь.
Plyton Rexus

@PlytonRexus Це можливо (Я не перевірив), що для дійсно великі "числа" Excel не намагається зберігати їх як числа, а просто зберігає їх безпосередньо як текст. Ваші "проблемні" номери можуть бути достатньо малі, щоб Excel спробував зберегти їх як числа, але достатньо великий, щоб отримати помилки через обмежену точність.
TripeHound

Завдяки TripeHound. Це дійсно можливо. Але в будь-якому випадку, @ Hannu шлях, здається, обійшов будь-яку проблему прокралися дюйма Ще раз спасибі, хоча.
Plyton Rexus
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.