menggunakan vba untuk membuat urutan nomor tertentu dalam excel [ditutup]

0

Saya mencoba membuat spreadsheet dengan kotak di sampingnya dengan sisa angka yang diisi, seperti di bawah ini:

1

2 3

4 5 6 7 8

9 10 11 12 13 14 15

16 17 18 19 20 21 22 23 24 ..... dll hingga sejumlah besar

Saya mengalami nol kesuksesan di sini, jadi bantuan apa pun dengan ini akan dihargai ...

untuk encore saya kemudian ingin memformat sel yang berisi bilangan prima. Saya punya beberapa kode di sini yang saya pikir akan berfungsi jika saya mendapatkan di atas untuk bekerja.

sorakan untuk bantuan apa pun dengan ini

Kevin

kevin_c
sumber
1
Nol kesuksesan? Apa yang sudah kamu coba? Tunjukkan kode Anda dan beri tahu kami bagaimana kesalahannya.
Raystafarian
2 adalah persegi?
ThunderFrame
Ups, jelas tidak ...
kevin_c
Saya mencoba kode siswa @ Gary di bawah. Berhasil. Tolong bagikan kode Anda yang menyoroti bilangan prima. Saya sedang belajar VBA dan hanya tertarik untuk melihat bagaimana kode Anda bekerja!
Prasanna
Di VBA agak janggal - Saya sekarang menggunakan fungsi pemformatan bersyarat di bawah ini. Ini merupakan fungsi array sehingga perlu CTRL + SHIFT + ENTER daripada hanya ENTER setelah memasukkannya ke dalam sel: = ATAU (A1 = 2, A1 = 3, ISNA (MATCH (BENAR, A1 / ROW (TIDAK LANGSUNG) ("2:" & INT (SQRT (A1)))) = INT (A1 / ROW (INDIRECT ("2:" & INT (SQRT (A1))))), 0)))
kevin_c

Jawaban:

1

Cukup isi kolom A dengan kotak dan kemudian isi setiap baris dengan nilai berurutan .:

Sub ytrewq()
    For i = 1 To 100
        k = 1
        For j = i ^ 2 To ((i + 1) ^ 2) - 1
            Cells(i, k) = j
            k = k + 1
        Next j
    Next i
End Sub

yang akan menghasilkan:

masukkan deskripsi gambar di sini

Hanya mengubah kode ini untuk menandai bilangan prima.

Siswa Gary
sumber
Hargai ini banyak, tepuk tangan - sederhana ketika Anda tahu caranya!
kevin_c
@kevin_c Anda benar! ............ kode ini tidak rumit.
Siswa Gary