Μετάβαση στο περιεχόμενο

apostolos55

Members
  • Περιεχόμενα

    70
  • Εντάχθηκε

  • Τελευταία επίσκεψη

  • Days Won

    5

apostolos55 last won the day on Ιούνιος 6 2011

apostolos55 had the most liked content!

Φήμη στην κοινότητα

46 Καλή

5 Ακόλουθοι

Σχετικά apostolos55

  • Κατάταξη:
    Μέλος

Profile Information

  • Φύλο
    Άντρας
  • Ενδιαφέροντα
    Σκί
    Προγραμματισμός
    κ.α.
  • Τοποθεσία
    Αθήνα (νότια προάστια) και Άνδρο
  • Επάγγελμα
    Μηχανικός
  • Ειδικότητα
    Διπλ. Πολιτικός Μηχανικός
  1. apostolos55

    ΑΠΔ Οικοδομοτεχνικών για ΙΚΑ

    καλησπέρα φίλε Bernidakis και προς όλους τους φίλους στο Michanikos.gr, απλά σας ενημερώνω ότι το εργαλείο δούλεψε πολύ καιρό άψογα, πλέον όμως και το ΙΚΑ έχει ακολουθήσει τις εξελίξεις και ο προσωπικός μου χρόνος δεν μου επιτρέπει να ασχοληθώ με ενημερώσεις κλπ. Μπορεί να έχουν αλλάξει οι προδιαγραφές του ΙΚΑ για τα αποστελλόμενα αρχεία. Δεν γνωρίζω και δεν μπορώ να ασχοληθώ. Ο κώδικας υπάρχει και είναι ανοικτός αν κάποιος άλλος επιθυμεί να ασχοληθεί. χαιρετώ Απόστολος
  2. apostolos55

    Υπολογισμός βλήτρων αγκυρίων

    ευχαριστώ
  3. καλησπέρα και ο τύπος υπολογισμού στο Excel με εισόδημα στο Κ11 είναι: =IF(K11<=12000;11%*K11;1320+(K11-12000)*33%) (μπορεί να θέλει , αντί για ; σε εσάς). Με τις υγείες μας...
  4. Fast-Track = Καταπάτηση της δημοκρατίας και της Ισότητας! τέλος!!! Τι πάει να πει fast-track? γιατί να παρακάμπτονται όλοι οι μηχανισμοί ελέγχου που ισχύουν για τους υπόλοιπους? Αντί να οργανώσουν τις υπηρεσίες για όλους, να μειωθεί και η γραφειοκρατεία, τις παρακάμπτουν! Ας κινηθούν λίγο σωστά και θα δουν αν χρειάζεται βοήθεια η αγορά. Άρση των εμποδίων του δημοσίου χρειάζεται, και μια σταθερότητα πολιτική-οικονομική. Αυτά για την ώρα. ΥΓ: σε μελέτη παλαιότερα είχα να κάνω με 3 αρχαιολογικές υπηρεσίες ταυτόχρονα, και τελικά η πιο άσχετη και χωρίς να εμπίπτει το έργο σε προστατευόμενη περιοχή ζήτησε πλήρες αντίγραφο (και ενημερώσεις) των αρχιτεκτονικών!!! τι να λέμε...
  5. Καλησπέρα για ξεκλείδωτα sites (να μην χρειάζεται κωδικούς και login) δουλεύεις με web-queries. Υπάρχουν άπειρα παραδείγματα-tutorials με λίγο ψάξιμο Όταν απαιτείται login κλπ τότε τα web-queries δε δουλεύουν (τουλάχιστον όχι πάντα) οπότε είναι κομματάκι δύσκολο. Μια "καλή" βοήθεια έχουν εδώ αλλά αν είσαι αρχάριος ίσως δυσκολευτείς. με μια επιπλέον στήλη μπορείς να δουλέψεις ως εξής: αρ. τιμές στη στήλη Α από Α2 ως Α43 διάφορα σε στείλες ως και C στήλη D στο D2 = IF(COUNTIF($A$2:$A$43;A2)>1;ROW();9999) τραβάς τον τύπο κάτω μέχρι το D43 στο D45 = COUNTIF(D2:D43;"<9999") στο Ε2 = IF(ROW()-1>$D$45;"";SMALL($D$2:$D$43;ROW()-1)) τραβάς μέχρι E40. Βάφεις έχρωμο το E41 να ξέρεις που τελειώνει ο τύπος... κρύβεις στήλη D τελείωσες. Δώσ'του λίγο να το εμπεδώσεις και προσάρμοσέ το στα δεδομένα σου Χαιρετώ
  6. μια πιο πασπαρτου λύση, μόνο μην μου ζητήσετε να την εξηγήσω... 1ο βήμα: στο Κελί Α2 βάζουμε το κείμενο "ααα βββ γγγ δδδ" (στο Α1 έχουμε τίτλο!) 2ο βήμα: στο κελί Β2 γράφουμε: =TRANSPOSE(MID($A2;SMALL(IF(MID(" "&$A2&" ";ROW($1:$40);1)=" ";ROW($1:$40);999);ROW($1:$10));SMALL(IF(MID(" "&$A2&" ";ROW($1:$40);1)=" ";ROW($1:$40);999);ROW($1:$10)+1)-SMALL(IF(MID(" "&$A2&" ";ROW($1:$40);1)=" ";ROW($1:$40);999);ROW($1:$10)))) και πατάμε ctrl+shift+enter (εισαγωγή ως matrix) 3ο βήμα: Μαρκάρουμε τα κελία Β2 ως Κ2 / πατάμε F2 / ctrl+shift+enter (επεκτείνουμε το matrix σε 10 κελιά σύνολο για αντίστοιχα αποτελέσματα) 4ο βήμα: Τραβάμε τα κελιά Β2-Κ2 όσο κάτω χρειάζεται... δυο λόγια: 1) το $1:$40 εξαρτάται από το μήκος του αλφαριθμητικού που έχουμε στο Α2. Μπορούμε να το κάνουμε $1:$200 ή όσο θέλουμε ώστε να καλυπτόμαστε πάντα, με αντίστοιχη επιβάρυνση σε υπολογισμούς-χρόνο εκτέλλεσης. ΑΛΛΑΓΕΣ σε ΟΛΑ τα $1:$40 και όχι μόνο στο 1ο, εφαρμογή με ctrl+shift+enter 2) Το $1:$10 προσδιορίζει τον αριθμό των αποτελεσμάτων, στο παράδειγμα είναι 10. Για λιγότερα πάμε στο 2ο βήμα και επιλέγουμε λιγότερα κελιά, διορθώνοντας παντού το $1:$10 σε πχ $1:$7 -->Β2-Η2, εφαρμογή με ctrl+shift+enter !!τα matrix δεν μικραίνουν μετά τον ορισμό τους, μόνο μεγαλώνουν!! Για Περισσότερα διορθώνουμε το $1:$10 σε πχ: $1:$12 παντού / ctrl+shift+enter και μετά επιλέγουμε Β2-Μ2 / F2 / ctrl+shift+enter (στο 3ο ή βήμα 4ο βήμα) η συνάρτηση ως κώδικας: >=TRANSPOSE(MID($A2;SMALL(IF(MID(" "&$A2&" ";ROW($1:$40);1)=" ";ROW($1:$40);999);ROW($1:$10));SMALL(IF(MID(" "&$A2&" ";ROW($1:$40);1)=" ";ROW($1:$40);999);ROW($1:$10)+1)-SMALL(IF(MID(" "&$A2&" ";ROW($1:$40);1)=" ";ROW($1:$40);999);ROW($1:$10)))) Καλύ τύχη! Τιπ! αν ο κώδικας matrix μπει επιτυχώς τότε στο κελί θα βλέπετε τη formula εντός {} πχ: αντι για =Α1 θα έχουμε {=Α1} κλπ
  7. Καλημέρα σας, και καλό μήνα! Θα αναφερθώ με την αγγλική ορολογία καθώς έτσι ανατρέχουμε ευκολότερα σε σχετική βοήθεια... Προφανώς μιλάτε για Data Validation, το οποίο έχει αναπτυχθεί εκτενώς και στο παρόν forum παλιότερα εδώ, με τις κατάλληλες παραπομπές και αρχειάκι demo. Επαναλαμβάνω ότι ένα ψάξιμο μας γλυτωνει από πολύ κόπο... Να αναφέρω επίσης ότι στο Excel DataValidation με εικόνες ή οριζοντίως (αντί του κατακορύφου) δεν γίνεται με "αυτόματο" τρόπο χωρίς χρήση πολύ προχωρημένης VBA, κάτι τέτοιο όμως δεν προτείνεται για αρχάριους χρήστες κατ'ουδένα τρόπο! Δεν ξέρω για Excel 2013 (ή 365) τι ισχύει... Χαίρετε
  8. μόλις έμαθα ότι η TimeValue υπάρχει και στη VBA!!!! οπότε ο παραπάνω κώδικας αλλάζει σε: > ' Time from String TimeFromAny = TimeValue(TimeOrHours) τώρα καλύπτονται και κάποιες περιπτώσεις 10:00:01 am/pm ή πμ/μμ δηλαδή οι ώρες σε 12ωρη βάση, ενώ η προηγούμενη εφαρμογή ήθελε 24ωρη βάση. χαιρετώ
  9. Καλημέρα Πρόσφατα μου προέκυψε χειρισμός χρόνου σε VBA ... Και όταν άρχισα να βγάζω άκρη, θυμήθηκα μια αρχή του προγραμματισμού, τα λεγόμενα Black-Boxes, δηλαδή να ξέρεις τι βάζεις και τι παίρνεις... πάντα. Σε συνδυασμό με την απαίτηση να μην ψάχνω κάθε φορά αν το κελί έχει χρόνο ή κείμενο, ή αν θέλω να προσθέσω μερικά λεπτά με τι διαιρώ κλπ, προέκυψε η Function TimeFromAny([TimeOrHours],[myMins],[mySecs]) As Variant, όπως φαίνεται όλα είναι Optional. Παραθέτω κώδικα και μετά Παραδείγματα: > ' Time from Any value ' Use Application.WorksheetFunction.IsText to check for text ' The proper way to work with time, since time is Variant! ' ' Creator Apostolos Goulandris - Jan 2013 Function TimeFromAny(Optional TimeOrHours = 0, Optional myMins As Integer = 0, Optional mySecs As Integer = 0) As Variant Dim a1 As Integer, a2 As Integer, thisTime As Long If Application.WorksheetFunction.IsText(TimeOrHours) Then ' Time from String a1 = InStr(TimeOrHours, ":"): a2 = InStr(a1 + 1, TimeOrHours, ":") thisTime = Left(TimeOrHours, a1 - 1) * 3600 + Mid(TimeOrHours, a1 + 1, a2 - a1 - 1) * 60 + Mid(TimeOrHours, a2 + 1) TimeFromAny = Round(thisTime / 86400, 6) ElseIf myMins > 0 Or mySecs > 0 Then ' Time from Values thisTime = TimeOrHours * 3600 + myMins * 60 + mySecs TimeFromAny = Round(thisTime / 86400, 6) Else ' Time from Time TimeFromAny = TimeOrHours End If End Function Παραδείγματα: με κείμενο: TimeFromAny("02:30:20") με τιμές: TimeFromAny(2,30,20) με άλλο χρόνο TimeFromAny(time) στο Excel με κείμενο =TimeFromAny(A1) για πρόσθεση 29' στην τρέχουσα ώρα myTime+TimeFromAny(myMins:=29) για πρόσθεση 1ώρας και 55'' στην τρέχουσα ώρα myTime+TimeFromAny(mySecs:=55,TimeOrHours:=1) ή το ίδιο γραμμένο αλλιώς myTime+TimeFromAny(1,,55) κλπ Μην ξεχνάτε ότι το excel και η VBA χειρίζονται το χρόνο σαν Variant (και περιέχει μέρες και χρόνο). Η timeFromAny παράγει το τμήμα του χρόνου μόνο (το δεκαδικό μέρος δηλαδή). Για προβολή της ώρας σε κατανοητή μορφή, χρησιμοποιείστε την Format, πχ format(TimeFromAny(...),"hh:mm:ss") ή προβάλετε σε φορμαρισμένο κελί (ως time) Μερική αντιστοιχία με την TimeFromAny για Excel μόνο μπορεί να παραχθεί με =IfError(TimeValue(A1);A1) οπότε αν δεν τα καταφέρει με την TimeValue, παίρνει την τιμή.. φυσικά προσθήκη λεπτών ωρών κλπ είναι άλλη ιστορία keep programming mates
  10. Σχετικά μe παλιότερα posts και την EvalMath του Gousgouni gvarth, βρήκα την Evaluate() στο Excel Κρυμμένη από το Excel, αλλά υπαρκτή στο RefersTo στα Named Ranges... κουφάθηκα όταν το είδα και διαπίστωσα ότι δουλεύει... λεπτομέρειες και εδώ.
  11. apostolos55

    Math Evaluation

    Επανέρχομαι με κάτι πολύ παλιό, πολύ κρυμένο... Δεν υπάρχει λόγος να χρησιμοποιούμαι VBA για evaluate! Γίνεται με συνάρτηση του Excel κρυμμένη από το Excel, αλλά υπαρκτή στο RefersTo στα Named Ranges... κουφάθηκα όταν το είδα και διαπίστωσα ότι δουλεύει... λεπτομέρειες και εδώ.
×

Σημαντικό

Χρησιμοποιούμε cookies για να βελτιώνουμε το περιεχόμενο του website μας. Μπορείτε να τροποποιήσετε τις ρυθμίσεις των cookie, ή να δώσετε τη συγκατάθεσή σας για την χρήση τους.