Κύριοι καλημέρα σας,
χρησιμοποίησα κώδικα από το Forum για την αποθήκευση του βιβλίου εργασίας και τον προσάρμοσα λίγο, όμως επειδή μεταφέρω το αρχείο και σε άλλους Υπολογιστές, θα πρέπει να αλλάζω την γραμμή ,
myPath = "C:\WINDOWS\Personal\ΥΕΒ\2018\" στον αντίστοιχο φάκελο που έχω σε κάθε Υπολογιστή.
Παραθέτω τον κώδικα :
Sub mySaveAsExcel()
Dim j As Integer
Dim myPath As String
'Dim mySheet As String
Dim myCell As String
Dim BookName As String
Dim IllegalCharacters As Variant
IllegalCharacters =
VBA.Array(">", "<", "?", "[", "]", ":", "|", "*", "/", "\", """")
myPath = "C:\WINDOWS\Personal\ΥΕΒ\2018\"
'mySheet = ActiveSheet.Φύλλο3
myCell = Φύλλο3.Range("A1").Value
BookName = myCell & " " & Format(Now(), "dd-mm-yyyy_hh:mm:ss") & ".xls"
For j = LBound(IllegalCharacters) To UBound(IllegalCharacters)
BookName =
VBA.Replace(BookName, IllegalCharacters(j), "")
Next j
ActiveWorkbook.SaveAs Filename:=myPath & BookName, _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End Sub
Το ερώτημα λοιπόν είναι:
1) Να γίνεται πάντα η αποθήκευση στον φάκελο "\τα έγγραφά μου (documents)\ΥΕΒ\2018". Θα πρέπει λοιπόν ο κώδικας να ελέγχει αν υπάρχει ο φάκελος "\ΥΕΒ\2018\" και αν δεν υπάρχει να τον δημιουργεί σε κάθε υπολογιστή που εγκαθιστώ το αρχείο. Στους υπολογιστές έχω windows xp, 7 και 10 και η λογική των φακέλων είναι διαφορετική (πχ. c:\user\user1\docouments\ΥΕΒ\2018)
2) Να ελέγχει στο myCell = Φύλλο3.Range("A1").Value, την τιμή στο "Α1" και αν είναι κενό να διακόπτετε ο κώδικας και να εμφανίζει σχετικό μήνυμα (πχ."τί κάνεις τώρα;").
3) στον κώδικα :
Sub MyClear()
Φύλλο2.Range("b4:b7").ClearContents
Φύλλο2.Range("b9:b11").ClearContents
Φύλλο2.Range("b13").ClearContents
Φύλλο2.Range("b15:b16").ClearContents
End Sub
μπορώ να γράψω μία γραμμή για αυτές τις περιοχές κελιών;
ευχαριστώ.