Note: The other languages of the website are Google-translated. Back to English
English English

จะสร้างจำนวนเฉพาะทั้งหมดระหว่างตัวเลขที่กำหนดสองตัวใน Excel ได้อย่างไร

ใน Excel คุณเคยพยายามแสดงรายการจำนวนเฉพาะทั้งหมดระหว่างตัวเลขสองตัวหรือไม่? บทความนี้ฉันจะพูดถึงวิธีการที่น่าสนใจในการจัดการกับงานนี้

สร้างจำนวนเฉพาะทั้งหมดระหว่างตัวเลขที่กำหนดสองตัวด้วยสูตร

สร้างจำนวนเฉพาะทั้งหมดระหว่างตัวเลขสองตัวที่กำหนดด้วย User Defined Function


ลูกศรสีฟ้าฟองขวา สร้างจำนวนเฉพาะทั้งหมดระหว่างตัวเลขที่กำหนดสองตัวด้วยสูตร


รวม กำหนดชื่อ ฟังก์ชันและสูตรคุณสามารถแสดงรายการหรือสร้างจำนวนเฉพาะทั้งหมดระหว่างจำนวนเฉพาะสองจำนวนได้ โปรดดำเนินการดังนี้:

1. โปรดสร้างชื่อช่วงแรกโดยคลิก สูตร > ชื่อผู้จัดการ, และใน ชื่อผู้จัดการ คลิกตกลง ใหม่ ปุ่มดูภาพหน้าจอ:

doc รายการหมายเลขเฉพาะ 1

2. ใน ชื่อใหม่ ในกลองโตตอบ ชื่อ - นามสกุล กล่องข้อความกรุณาใส่ RNG เป็นชื่อช่วงจากนั้นป้อนสูตรนี้: = ROW (ทางอ้อม (Sheet1! $ B $ 1 & ":" & Sheet1! $ B $ 2)) (Sheet1 คือแผ่นงานปัจจุบันของคุณที่คุณใช้ B1 และ B2 คือหมายเลขเริ่มต้นและหมายเลขสิ้นสุดที่คุณระบุ) ลงในไฟล์ อ้างถึง กล่องข้อความจากนั้นคลิก OK เพื่อกลับไปยังกล่องโต้ตอบเดิม ดูภาพหน้าจอ:

doc รายการหมายเลขเฉพาะ 2

3. ไปที่การคลิก ใหม่ เพื่อสร้างชื่อช่วงอื่นในไฟล์ ชื่อใหม่ กล่องโต้ตอบป้อนชื่อ สำคัญ เข้าไปใน ชื่อ - นามสกุล กล่องข้อความจากนั้นป้อนสูตรนี้: =SMALL(IF(MMULT(--(IF(rng>TRANSPOSE(rng-Sheet1!$B$1+2),MOD(rng,(rng>TRANSPOSE(rng-Sheet1!$B$1+2))*TRANSPOSE(rng-Sheet1!$B$1+2)))=0),rng-Sheet1!$B$1+2)=0,rng),ROW(INDIRECT("1:"&Sheet1!$B$2))) (RNG คือชื่อช่วงแรกที่คุณสร้างในขั้นตอนที่ 2) ลงในไฟล์ อ้างถึง กล่องข้อความดูภาพหน้าจอ:

doc รายการหมายเลขเฉพาะ 3

4. จากนั้นคลิก OK และปิดกล่องโต้ตอบและเลือกหนึ่งคอลัมน์ที่คุณต้องการแสดงรายการจำนวนเฉพาะทั้งหมดแล้วป้อนสูตรนี้: = IFERROR (เฉพาะ, "")(สำคัญ คือชื่อช่วงที่คุณสร้างในขั้นตอนที่ 3) ลงในแถบสูตรแล้วกด CTRL+SHIFT+ENTER คีย์เข้าด้วยกันหมายเลขเฉพาะทั้งหมดระหว่างตัวเลขสองตัวที่ระบุจะแสดงเป็นภาพหน้าจอต่อไปนี้:

doc รายการหมายเลขเฉพาะ 4


ลูกศรสีฟ้าฟองขวา สร้างจำนวนเฉพาะทั้งหมดระหว่างตัวเลขสองตัวที่กำหนดด้วย User Defined Function

หากวิธีแรกค่อนข้างยากคุณสามารถใช้ a ฟังก์ชันที่ผู้ใช้กำหนด เพื่อแก้ปัญหา

1. กด ALT + F11 คีย์เพื่อเปิด Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง

2. คลิก สิ่งที่ใส่เข้าไป > โมดูลและวางรหัสต่อไปนี้ในไฟล์ โมดูล หน้าต่าง.

รหัส VBA: สร้างจำนวนเฉพาะทั้งหมดระหว่างตัวเลขเฉพาะสองตัว:

Function PRIME(St, En As Long)
'Updateby Extendoffice 20160613
Dim num As String
For n = St To En
    For m = 2 To n - 1
        If n Mod m = 0 Then GoTo 20:
    Next m
    num = num & n & ","
20:
Next n
PRIME = num
End Function

3. จากนั้นบันทึกและปิดรหัสนี้กลับไปที่แผ่นงานโปรดป้อนสูตรนี้: = นายก (10,100) (10 คือหมายเลขเริ่มต้นและ 100 คือหมายเลขต่อท้ายที่คุณต้องการรับจำนวนเฉพาะระหว่างคุณสามารถเปลี่ยนได้ตามต้องการ) จากนั้นกด เข้าสู่ และจำนวนเฉพาะทั้งหมดจะแสดงในเซลล์เดียวดูภาพหน้าจอ:

doc รายการหมายเลขเฉพาะ 5


เครื่องมือเพิ่มประสิทธิภาพการทำงานในสำนักงานที่ดีที่สุด

Kutools สำหรับ Excel ช่วยแก้ปัญหาส่วนใหญ่ของคุณและเพิ่มผลผลิตของคุณได้ถึง 80%

  • นำมาใช้ใหม่: ใส่อย่างรวดเร็ว สูตรที่ซับซ้อนแผนภูมิ และสิ่งที่คุณเคยใช้มาก่อน เข้ารหัสเซลล์ ด้วยรหัสผ่าน; สร้างรายชื่อผู้รับจดหมาย และส่งอีเมล ...
  • ซุปเปอร์ฟอร์มูล่าบาร์ (แก้ไขข้อความและสูตรหลายบรรทัดได้อย่างง่ายดาย); การอ่านเค้าโครง (อ่านและแก้ไขเซลล์จำนวนมากได้อย่างง่ายดาย); วางลงในช่วงที่กรองแล้ว...
  • ผสานเซลล์ / แถว / คอลัมน์ โดยไม่สูญเสียข้อมูล แยกเนื้อหาของเซลล์ รวมแถว / คอลัมน์ที่ซ้ำกัน... ป้องกันเซลล์ซ้ำ; เปรียบเทียบช่วง...
  • เลือกซ้ำหรือไม่ซ้ำ แถว; เลือกแถวว่าง (เซลล์ทั้งหมดว่างเปล่า); Super Find และ Fuzzy Find ในสมุดงานจำนวนมาก สุ่มเลือก ...
  • สำเนาถูกต้อง หลายเซลล์โดยไม่เปลี่ยนการอ้างอิงสูตร สร้างการอ้างอิงอัตโนมัติ ถึงหลายแผ่น ใส่สัญลักษณ์แสดงหัวข้อย่อย, กล่องกาเครื่องหมายและอื่น ๆ ...
  • แยกข้อความ, เพิ่มข้อความ, ลบตามตำแหน่ง, ลบ Space; สร้างและพิมพ์ผลรวมย่อยของเพจ แปลงระหว่างเนื้อหาของเซลล์และความคิดเห็น...
  • ซุปเปอร์ฟิลเตอร์ (บันทึกและใช้โครงร่างตัวกรองกับแผ่นงานอื่น ๆ ); การเรียงลำดับขั้นสูง ตามเดือน / สัปดาห์ / วันความถี่และอื่น ๆ ตัวกรองพิเศษ โดยตัวหนาตัวเอียง ...
  • รวมสมุดงานและแผ่นงาน; ผสานตารางตามคอลัมน์สำคัญ แยกข้อมูลออกเป็นหลายแผ่น; Batch แปลง xls, xlsx และ PDF...
  • คุณสมบัติที่ทรงพลังมากกว่า 300 รายการ. รองรับ Office / Excel 2007-2019 และ 365 รองรับทุกภาษา ใช้งานง่ายในองค์กรหรือองค์กรของคุณ ทดลองใช้ฟรี 30 วันเต็ม รับประกันคืนเงิน 60 วัน
kte แท็บ 201905

แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มผลผลิตของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
ด้านล่าง officetab
จัดเรียงความคิดเห็นโดย
ความคิดเห็น (3)
ยังไม่มีการให้คะแนน เป็นคนแรกที่ให้คะแนน!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
Sub generateprimenumbersbetween() beginning_number = 1 'ค่าอินพุตที่นี่ last_number = 2000' ค่าอินพุตที่นี่ primenumbers = "" For a = beginning_number To last_number For b = 2 ถึง a If a - b * Int(a / b) = 0 และ ab แล้ว ออกสำหรับอย่างอื่น ถ้า a = b จากนั้น หมายเลขไพรม์ = หมายเลขไพรม์ & " " & a สิ้นสุดถ้าสิ้นสุด ถ้า ถัดไป b ถัดไป a หมายเลขไพรเมอร์ของ MsgBox สิ้นสุดฟังก์ชันย่อย primenumbersbetween (starting_number, last_number) primenumbers = "" สำหรับ a = beginning_number ถึง last_number สำหรับ b = 2 ถึง a ถ้า a - b * Int(a / b) = 0 และ ab แล้ว ออกสำหรับอย่างอื่น ถ้า a = b แล้วก็ primenumbers = primenumbers & " " & a End If End If Next b Next a primenumbersbetween = primenumbers End Function 'เพื่อตรวจสอบว่า ตัวเลขเป็นจำนวนเฉพาะ Sub ISPRIME() number_to_be_checked = 102 'ป้อนค่าที่นี่ สำหรับ b = 2 ถึง number_to_be_checked ถ้า number_to_be_checked - b * Int(number_to_be_checked / b) = 0 และ _ number_to_be_checked b จากนั้น MsgBox "ไม่เฉพาะ b ออกโดย " & ย่อยอื่น ถ้า number_to_be_checked = b แล้ว MsgBox "นายก" สิ้นสุด ถ้าสิ้นสุด ถ้าถัดไป b สิ้นสุด S ub 'เพื่อตรวจสอบว่าตัวเลขเป็นจำนวนเฉพาะหรือไม่ ฟังก์ชั่น ISPRIME2(number_to_be_checked) สำหรับ b = 2 ถึง number_to_be_checked หาก number_to_be_checked - b * Int(number_to_be_checked / b) = 0 และ _ number_to_be_checked b จากนั้น ISPRIME2 = "ไม่เฉพาะ หารด้วย " & b ออกจากฟังก์ชัน Else If number_to_be_checked = b แล้ว ISPRIME2 = "Prime" สิ้นสุด If End If Next b สิ้นสุดฟังก์ชัน
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์




ย่อยสิ้นสุด

ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
Sub generateprimenumbersbetween3() beginning_number = 1 'ค่าอินพุตที่นี่ last_number = 10000 'ค่าอินพุตที่นี่ primenumbers = "" For a = beginning_number To last_number c = a For b = 2 To c หาก Mod b = 0 และ cb จากนั้นให้ออกจากที่อื่น ถ้า b = c จากนั้นไพรนัมเบอร์ = ไพรนัมเบอร์ & " " & a ออกสำหรับอย่างอื่น ถ้ารอบ(a / (b + 1)) + 1 > b แล้ว c = รอบ(a / (b + 1)) + 1 สิ้นสุด ถ้าสิ้นสุด ถ้าสิ้นสุด ถ้าถัดไป b ถัดไป a MsgBox primenumbers End Sub Function PRIMENUMBERSBETWEEN3 (starting_number, last_number) primenumbers = "" สำหรับ a = beginning_number To last_number c = a สำหรับ b = 2 ถึง c หาก Mod b = 0 และ cb จากนั้นให้ออกสำหรับ Else ถ้า b = c จากนั้นไพรนัมเบอร์ = ไพรนัมเบอร์ & " " & a ออกสำหรับอย่างอื่น ถ้ารอบ (a / (b + 1)) + 1 > b แล้ว c = รอบ (a / (b + 1)) + 1 สิ้นสุดถ้าสิ้นสุดถ้าสิ้นสุดถ้าถัดไป b ถัดไป a PRIMENUMBERSBETWEEN3 = primenumbers End Function Sub ISPRIME3() number_to_be_checked = 15485863 'อินพุตค่าที่นี่ c = number_to_be_checked สำหรับ b = 2 ถึง c ถ้า number_to_be_checked Mod b = 0 และ cb แล้ว MsgBox "ไม่เฉพาะ หารด้วย " & bออกจาก Sub Else ถ้า b = c จากนั้น MsgBox "Prime" Exit Sub Else ถ้า Round(number_to_be_checked / (b + 1)) + 1 > b จากนั้น c = Round(number_to_be_checked / (b + 1)) + 1 End ถ้า End ถ้า End ถ้าถัดไป b จบ Sub
มีความคิดเห็นยังไม่มีการโพสต์ที่นี่
แสดงความคิดเห็นของคุณ
โพสต์ในฐานะแขก
×
ให้คะแนนโพสต์นี้:
0   ตัวอักษร
สถานที่แนะนำ