| Excel - Ερωτήσεις / Απαντήσεις Ότι έχει σχέση με συναρτήσεις, μορφοποίηση, εκτυπώσεις γραφήματα κτλ. |
![]() |
| | Εργαλεία Θεμάτων | Τρόποι εμφάνισης |
|
#1
| |||
| |||
|
Καλησπέρα. Σε ένα excel έχω την παρακάτω συνάρτηση Κώδικας: =INDEX(B19:B195;RANDBETWEEN(1;177)) |
|
#2
|
|
Ένας τρόπος είναι ο πιο κάτω Ονομάζουμε την περιοχή Β19:Β195 area Αριθμούμε Α19:Α195 από το 1 έως το 177 κώδικας σε Module Sub Macrorandnames() Range("A1").FormulaR1C1 = "=RANDBETWEEN(1,177)" End Sub οι τύποι στα κελιά Α1, Α2 A1 =RANDBETWEEN(1;177) A2 =INDEX(area;A1) ή όπου αλλού θέλουμε Φτιάχνουμε ένα κουμπί και του περνάμε την εντολή |
|
#3
| |||
| |||
| Ευχαριστώ για την απάντηση σου... Έκανα όσα μ είπες...Το κομμάτι ώμος που έχω παραθέσει δεν έχω καταλάβει..Με το που πατάω το κουμπί μου εμφανίζει αριθμούς όχι ονόματα..
|
|
#4
|
|
Δες κι αυτό το συνημμένο
|
|
#5
| |||
| |||
| δες πως το έκανα εγώ
|
|
#6
|
|
Αφού άλλαξες θέση στον τύπο άλλαξε κι αυτόν από Α1 (που ήταν στο παράδειγμα) με το Κ12 που είναι στην πραγματικότητα για να δουλέψει =INDEX(area;K12) |
|
#7
| |||
| |||
|
Το κατάλαβα...Ευχαριστώ πάρα πολύ. Καλό βράδυ
|
|
#8
|
|
Καλημέρα Παρατήρησα ότι και στον κώδικα έχεις αλλάξει το Range σε J12 Άρα για να είναι όλα σωστά πρέπει: ή αν έχεις την RANDBETWEEN στο Κ12 και την INDEX στο K13 να βάλεις για Range στον κώδικα Κ12 και να διαγράψεις την RANDBETWEEN από το J12 ή αν θέλεις οπωσδήποτε το J12 στον κώδικα άλλαξε την INDEX που είναι στο Κ13 σε =INDEX(area;J12) και διέγραψε την RANDBETWEEN από το Κ12 για να μην έχεις 2 κελιά που θα εκτελούν τους τυχαίους αριθμούς Γενικά αν θέλεις να το χρησιμοποιήσεις και αλλού ακολούθησε τον κανόνα Το κελί που θα εκτελείται η RANDBETWEEN μπαίνει στον κώδικα ως Range Όπου θέλεις βάλε την INDEX αλλά το κελί που "παίρνει" να είναι αυτό που εκτελείται η RANDBETWEEN |
|
#9
|
|
Καλημέρα σας Θα ήθελα να πω ότι με τις μέχρι τώρα προτάσεις, το J12 (άρα και το τυχαίο όνομα) αλλάζει τιμή κάθε φορά που το Excel κάνει υπολογισμό και όχι μόνο όταν πατάμε το κουμπί !!! Δεν είμαι σίγουρος για το ποιο είναι το ζητούμενο αλλά, ![]() Για να αλλάζει ΜΟΝΟ (αλλιώς νομίζω δεν έχει νόημα) όταν πατάμε το κουμπί, η μακροεντολή πρέπει να καταχωρεί τυχαία τιμή στο κελί J12 και όχι τύπο. Range("J12").Value = Int(177 * Rnd) + 1 Το 177 βέβαια καλό θα είναι να είναι δυναμικό δηλαδή Range("area").Rows.Count άρα θα πρότεινα Κώδικας: Sub Macrorandnames()
Randomize
Range("J12").Value = Int(Range("area").Rows.Count * Rnd) + 1
End Sub
=INDEX(area;J12) Φιλικά Θανάσης ΥΓ. Αν θέλουμε τυχαίο όνομα όταν γίνεται υπολογισμός και όχι ΜΟΝΟ όταν πατάμε το κουμπί, δεν χρειάζεται VBA και κουμπί. Αρκεί ο τύπος: =INDEX(area;INT(RAND()*COUNTA(area))+1) και F9 για να προκαλέσουμε υπολογισμό. |
|
#10
|
|
Ναι Θανάση έχεις δίκιο Δεν απέκλεισα τον τυχαίο υπολογισμό όταν υπολογίζει η excel |
![]() |
« Προηγούμενο Θέμα
|
Επόμενο Θέμα »
| |
| ||||
| Θέμα | Δημιουργός | Forum | Απαντήσεις | Τελευταίο Μήνυμα |
| [ Συναρτήσεις ] Δημιουργία μακροεντολής για εκτέλεση εντολής | mousatos | Access - Ερωτήσεις / Απαντήσεις | 2 | 08-09-13 20:05 |
| [ Φόρμες ] Ενεργοποίηση-Απενεργοποίηση κουμπιού | Χρήστος | Access - Ερωτήσεις / Απαντήσεις | 2 | 26-07-13 12:42 |
| [Γενικά] Ενεργοποίηση απενεργοποίηση κουμπιού και σήμανση | PANIK | Excel - Ερωτήσεις / Απαντήσεις | 4 | 14-04-12 15:03 |
| [ Φόρμες ] Εναλλαγή λεζάντας κουμπιού | artchrist73 | Access - Ερωτήσεις / Απαντήσεις | 1 | 13-06-11 20:50 |
| [Γενικά] Δημιουργία κουμπιού και δημιουργία νέας λίστας | sethii | Excel - Ερωτήσεις / Απαντήσεις | 3 | 31-03-11 07:52 |
Η ώρα είναι 19:45.




Αλλαγή σε γραμμικό τρόπο

