Προς το περιεχόμενο

Help on EXCEL VBA


Centaur79

Προτεινόμενες αναρτήσεις

Δημοσ.

paidia ti brika tin akri kai doulepse. twra exw mia alli aporia, kanw record ena macro pou na trexei to solver me ta constraints pou exw balei. alla molis paw na to treksw mou grafei: sub or faunction not defined. o kwdikas tou macro einai o eksis:

Sub Macro1()

'

' Macro1 Macro

' Macro recorded 3/4/2006 by Panos

'

 

'

SolverOk SetCell:="$B$35", MaxMinVal:=1, ValueOf:="0", ByChange:="$B$21:$B$22"

SolverSolve

End Sub

.

 

please boi8istei giati prepei na paradwsw to project tin trith.

efxaristw ek twn proterwn!

Δημοσ.

Το πιθανότερο είναι ότι δεν έχεις ενεργοποιήσει το Solver add-in της VBA.

 

Αν η υπόθεση που κάνω είναι σωστή:

Ανοιξε τον Visual Basic Editor (Alt-F11), πήγαινε Tools -> References, και τσέκαρε το box του Solver.

 

Hope it helps.

Δημοσ.

το κοιταξα αυτό που λές αλλα δεν βρήκα solver add-in, τουλάχιστον δεν φαινεται καπου ξεκάθαρα να λέει solver. μηπως μπορείς να μου πείς το ακριβές όνομα?

Δημοσ.

Για το αρχειο και σε περιπτωση που ενδιαφέρει και καποιον αλλο αναφέρω ότι η επιλογή που ανέφερε ο gerontas υπάρχει στο office 2003 αλλα δεν το βρήκα στα xp. Μόλις εγκατέστησα το 2003 δούλεψε το macro την πρωτη φορά. Μόλις έκλεισα το excel file και το ξαναάνοιξα δεν δούλεψε και μου πέταξε ένα μηνυμα που έλεγε:

Solver: an unexpected error occured or available memory has been exhausted.

Αν καποιος ξέρει που οφείλεται ας δώσει τα φώτα του.

Δημοσ.

Με βάση μια μικρή έρευνα που έκανα το παράπανω πρόβλημα οφείλεται σε καποιο bug του excel. Για να διορθωθεί και να μπορέσουμε να καλέσουμε το solver από vba πρέπει να προστεθεί ένα if statement στο macro που καλεί το solver, το οποίο και παραθέτω σε περίπτωση που μπορεί να ενδιαφέρει καποιον στο μέλλον:

 

If Not Solver.Solver1.AutoOpened Then

Application.DisplayAlerts = False

Solver.Solver2.Auto_Open

Application.DisplayAlerts = True

End If

  • 3 εβδομάδες αργότερα...

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...