ヒント:他の言語はGoogle翻訳されています。 訪問することができます English このリンクのバージョン。
ログイン
x
or
x
x
会員登録
x

or

Excelで与えられた2つの数値の間にすべての素数を生成する方法は?

Excelでは、与えられた2つの数値の間のすべての素数をリストしようとしたことがありますか? この記事では、このタスクに対処するいくつかの興味深い方法について説明します。

数式で与えられた2つの数値の間のすべての素数を生成する

与えられた2つの数値の間のすべての素数をユーザ定義関数で生成する


矢印青い右の泡 数式で与えられた2つの数値の間のすべての素数を生成する


組み合わせる 名前を定義する 関数と数式を使用すると、2つの特定の数値の間の素数のすべてを一覧表示または生成できます。 次のようにしてください:

1。 最初の範囲名をクリックして作成してください > 名前管理者、そして 名前管理者 ダイアログボックスで、をクリックします。 新しい ボタン、スクリーンショットを参照してください:

docリストの素数1

2。 の中に 新しい名前 ダイアログボックスの 氏名 テキストボックスに入力してください RNG 範囲名として次の式を入力します。 =行(間接(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 step2で作成した最初の範囲名です)を を参照する テキストボックス、スクリーンショットを参照してください:

docリストの素数3

4。 次に、をクリックします OK ダイアログを閉じて、すべての素数をリストする列を1つ選択し、次の式を入力します。 = IFERROR(ボーナス、 "")(素数 数式バーにステップ3で作成した範囲名)を入力してから CTRL + SHIFT + ENTER 指定された2つの数字の間のすべての素数は、次のスクリーンショットのように表示されます。

docリストの素数4


矢印青い右の泡 与えられた2つの数値の間のすべての素数をユーザ定義関数で生成する

最初の方法がやや難しい場合は、ここで ユーザー定義関数 それを解決する。

1。 押さえつける Alt + F11 キーを押して アプリケーション用Microsoft Visual Basic 窓。

2に設定します。 OK をクリックします。 インセット > モジュール、次のコードを モジュール 窓。

VBAコード:2つの特定の数字の間のすべての素数を生成する:

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 間に素数を入れたい終わりの番号です。必要に応じて変更することができます)、次に 入力します キーを押し、すべての素数を1つのセルに表示します。スクリーンショットを参照してください:

docリストの素数5


Kutools for Excelは、ほとんどの問題を解決し、生産性を80%向上させます

  • 再利用: すばやく挿入 複雑な数式、チャート そして、以前に使用したもの; セルを暗号化する パスワード付き メーリングリストの作成 そしてメールを送る...
  • スーパーフォーミュラバー (複数行のテキストや数式を簡単に編集する) レイアウトを読む (多数のセルを簡単に読んで編集できます)。 フィルター範囲に貼り付ける...
  • セル/行/列を結合 データを失うことなく; セルコンテンツの分割。 重複する行/列を結合する...重複セルの防止。 範囲の比較...
  • 重複または一意を選択します空白行を選択 (すべてのセルは空です)。 スーパー検索とファジー検索 多くのワークブックで。 ランダム選択
  • 完全コピー 式の参照を変更せずに複数のセル。 参照を自動作成 複数のシートに 箇条書きを挿入、チェックボックスなど
  • テキストを抽出、テキストの追加、位置による削除、 スペースを削除する; ページング小計の作成と印刷 セルのコンテンツとコメント間の変換...
  • スーパーフィルター (保存して他のシートにフィルタ方式を適用する)。 高度な並べ替え 月/週/日、頻度などによる。 特殊フィルター 太字、斜体で...
  • ワークブックとワークシートを組み合わせる; キー列に基づいて表をマージします。 データを複数のシートに分割する; xls、xlsx、およびPDFのバッチ変換...
  • 300を超える強力な機能。 Office / Excel 2007-2019および365をサポートします。 すべての言語をサポートします。 企業または組織に簡単に展開できます。 フル機能の30日間の無料トライアル。
KTEタブ201905

OfficeタブはOfficeにタブ付きインターフェイスを提供し、作業をより簡単にします

  • Word、Excel、PowerPointでタブ付き編集と読み取りを有効にする、出版社、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性を50%向上させ、毎日数百回のマウスクリックを削減します。
オフィシタブ底
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    John Kennedy Aquino · 2 years ago
    Sub generateprimenumbersbetween3()
    starting_number = 1 'input value here
    last_number = 10000 'input value here
    primenumbers = ""
    For a = starting_number To last_number
    c = a
    For b = 2 To c
    If a Mod b = 0 And c b Then
    Exit For
    Else
    If b = c Then
    primenumbers = primenumbers & " " & a
    Exit For
    Else
    If Round(a / (b + 1)) + 1 > b Then
    c = Round(a / (b + 1)) + 1
    End If
    End If
    End If
    Next b
    Next a
    MsgBox primenumbers
    End Sub

    Function PRIMENUMBERSBETWEEN3(starting_number, last_number)
    primenumbers = ""
    For a = starting_number To last_number
    c = a
    For b = 2 To c
    If a Mod b = 0 And c b Then
    Exit For
    Else
    If b = c Then
    primenumbers = primenumbers & " " & a
    Exit For
    Else
    If Round(a / (b + 1)) + 1 > b Then
    c = Round(a / (b + 1)) + 1
    End If
    End If
    End If
    Next b
    Next a
    PRIMENUMBERSBETWEEN3 = primenumbers
    End Function

    Sub ISPRIME3()
    number_to_be_checked = 15485863 'input value here
    c = number_to_be_checked
    For b = 2 To c
    If number_to_be_checked Mod b = 0 And c b Then
    MsgBox "Not Prime. Divisible by " & b
    Exit Sub
    Else
    If b = c Then
    MsgBox "Prime"
    Exit Sub
    Else
    If Round(number_to_be_checked / (b + 1)) + 1 > b Then
    c = Round(number_to_be_checked / (b + 1)) + 1
    End If
    End If
    End If
    Next b
    End Sub
  • To post as a guest, your comment is unpublished.
    John Kennedy Aquino · 2 years ago
    Sub generateprimenumbersbetween()
    starting_number = 1 'input value here
    last_number = 2000 'input value here
    primenumbers = ""
    For a = starting_number To last_number
    For b = 2 To a
    If a - b * Int(a / b) = 0 And a b Then
    Exit For
    Else
    If a = b Then
    primenumbers = primenumbers & " " & a
    End If
    End If
    Next b
    Next a
    MsgBox primenumbers
    End Sub

    Function primenumbersbetween(starting_number, last_number)
    primenumbers = ""
    For a = starting_number To last_number
    For b = 2 To a
    If a - b * Int(a / b) = 0 And a b Then
    Exit For
    Else
    If a = b Then
    primenumbers = primenumbers & " " & a
    End If
    End If
    Next b
    Next a
    primenumbersbetween = primenumbers
    End Function

    'to check if a number is prime
    Sub ISPRIME()
    number_to_be_checked = 102 'input value here
    For b = 2 To number_to_be_checked
    If number_to_be_checked - b * Int(number_to_be_checked / b) = 0 And _
    number_to_be_checked b Then
    MsgBox "Not Prime. Divisible by " & b
    Exit Sub
    Else
    If number_to_be_checked = b Then
    MsgBox "Prime"
    End If
    End If
    Next b
    End Sub

    'to check if a number is prime
    Function ISPRIME2(number_to_be_checked)
    For b = 2 To number_to_be_checked
    If number_to_be_checked - b * Int(number_to_be_checked / b) = 0 And _
    number_to_be_checked b Then
    ISPRIME2 = "Not Prime. Divisible by " & b
    Exit Function
    Else
    If number_to_be_checked = b Then
    ISPRIME2 = "Prime"
    End If
    End If
    Next b
    End Function