İki hücreyi dize aramak ve dize farklı ise karşılık gelen sayıları çarpmak için Excel formülü


0

Her biri tek bir dize içeren iki spesifik hücreyi karşılaştırmak istiyorum. Dize, bir veya iki basamağın sayısal bir değerinden sonra harf Hveya ile oluşur W. Veya hücre sadece sıfır içerebilir (harfsiz). örneğin, Hücreler içerebilir 3Hveya 2Wveya 0.

Bu iki hücreye dayanarak üçüncü bir hücrede bir değer elde etmek istiyorum. Her iki hücre de aynı harfle bitiyorsa, formülün sıfır (0) değerini vermesini istiyorum. Farklı harflerle bitirlerse, formülün sayısal değerleri iki hücreden çarpmasını istiyorum. Her iki hücrede de yalnızca bir sıfır varsa, çıkış değeri sıfır olmalıdır.

Örnekler:

  • 3Hkarşılaştırılır 2Wolur 3 x 2, çıkış 6.
  • 3Hkarşılaştırılır 2Hçıkışlar 0harfler maç çünkü.
  • 3H0Çıktılara kıyasla, 0çünkü değerlerden biri 0.

Çalışma sayfasında, sayısal değerler değişkendir (en fazla 99), ancak harfler yalnızca her zaman olacaktır Hveya Wher zaman sayıdan hemen sonra olacaktır (bir 0giriş hariç ).


Sayısal kısım herhangi bir sayıdaki rakam olabilir mi? Metni bir komşu hücreye koymak için önerilere ilgi duymadığınızı varsayabilir miyiz? Mektubun en doğru karakter olacağı garanti ediliyor mu (örneğin, harften sonra boşluk olmadığı durumlarda)? Her zaman bir mektup var mı, yoksa sadece bir rakamla giriş yapabilir misiniz?
fixer1234

Değer maksimum 99 olacaktır; bu nedenle 1 veya 2 rakam uzunluğundadır. Hesaplama ve mizanpaj nedenleriyle, tek bir hücrede kalmak için sayı ve dizgeye ihtiyacım var. Evet, mektubun her zaman en doğru karakter olacağı garanti edilir ve yalnızca bir rakamı olan tek giriş sıfır olur.
zenmonki

Eğer hücrelerden biri yalnızca sıfır içerebilirse, bununla ne yaparsınız?
fixer1234

Temelde sıfırla çarpın veya sadece basitçe sıfırla çıkın.
zenmonki

Yeterince basit görünüyor. Sahte kodda yazdın mı? Örneğin, eğer - veya (a2 = 0, b2 = 0): çıkış 0 ise, başka bir soru ile devam edin.
ejbytes

Yanıtlar:


0

İki değerinizin A1 ve B1 hücrelerinde olduğunu ve sonucunuzun C1'e gittiğini söyleyin. Bunu C1'de kullanabilirsiniz:

=IF(RIGHT(A1,1)=RIGHT(B1,1),0,LEFT(A1,LEN(A1)-1)*LEFT(B1,LEN(B1)-1))

Bu, herhangi bir yerde hatalı bir boşluk gibi düzensizlikler olmadığını varsayar. İki hücrenin en sağdaki karakterini karşılaştırır ve eşleşirse sıfır döndürür. Aksi takdirde, en sağdaki karakter dışındaki her şeyi çarpar. Her şeyi en sağdaki karakterin soluna ayıklamak size bir metin dizesi verir, ancak Excel bir sayı gibi davranmak için yeterince akıllıdır.

Bir yorumda, değerlerden birinin yalnız bir sıfır olacağını (izleyen karakter yok), bu durumda çıkışın sıfır olması gerektiğini belirtirsiniz. Bir hata durumundan kaçınmak için, bir testi dahil ederek yapabileceğiniz böyle bir hücreyi kullanmanız gerekir. Bu yöntem boş bir hücreyi de işleyecektir:

=IF(OR(RIGHT(A1,1)=RIGHT(B1,1),A1=0,B1=0),0,LEFT(A1,LEN(A1)-1)*LEFT(B1,LEN(B1)-1))

Sıfırları doğru kullanıyor, ancak herhangi bir sayısal değer için #Value hatası veriyor ... Herhangi bir fikir?
zenmonki

@zenmonki, haklısın. Daha fazla kahveye ihtiyacım vardı. Gözden geçirilmiş formülü deneyin.
fixer1234

@zenmonki, revize edilmiş formül size normal bir giriş içeren değerler konusunda bir hata verirse (sayıyı takip eden harf), baştaki veya sondaki boşluğunuz olmadığını doğrulayın. Matematik yapmak istediğiniz hücrelerde sayıların ve harflerin karıştırılmasıyla ilgili bir problem, temizlenmesi veya taşınması gereken her türlü anomaliyi gizleyebilmesi ve formüllerin önemsiz bir şeyden karmaşık bir şeye hızla gidebilmesidir.
fixer1234

Teşekkürler ve anladım. Şu anda excel, her şey için sadece sıfırlar çıkarıyor. Hala bir şey mi eksik?
zenmonki

Bunu test ettim ve işe yaradı, tahminimce verilerle ilgili sorunların olacağını düşünüyorum. Formülü kopyalayıp yapıştırdınız mı? Değilse, yazım hatası olmadığını doğrulayın. Sıfır alıyorsanız, IF'nin test ettiği üç koşuldan biri veya daha fazlası doğru demektir. Harfleri izleyen sadece rakamlarla çalıştığından ve yabancı karakter olmadığından emin olmak için bazı değerleri manuel olarak girmeyi deneyin. Başka bir teşhis: ne ürettiklerini görmek için formülün sadece parçalarını girin (örneğin, = SAĞ (A!, 1), = SOL (A1, LEN (A1) -1), vb.)
fixer1234
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.