Is it possible to delete Search Folders in Outlook using VBA?
I'm trying to figure out, but I don't know how to do it.
My goal is to make a search folder as a temporary storage of my mails and delete it after accessing the emails inside the search folder. I already have the code for creating search folder. But what I want to do is delete the search folder.
I found a code in slipstick.com but my knowledge is not enough to understand the whole process of the program:
http://www.slipstick.com/developer/create-an-outlook-search-folder-using-vba/
Use the Delete method of the Folder class.
Related
I am relatively new to programming and want to create a program which can solve a problem that I frequently have.
So here's the background to my short story: I was on a website which hosted many files (We're talking about around 500-1000 small files). I was then like," Oh sweet! I want to have all these things in my hard drive so I know that I have access to them... but am probably not going to use them either way". I proceeded to download all 500-1000 files on that site, but encountered a problem when I looked at the properties of my destination file. Let's say that out of 500 on the site, my computer only had 499 files. Just my luck. I wanted to know what was that one pesky file that slipped right by me and download that file specifically. What I didn't want to do was to delete all the files and then try my luck once more in downloading all the files from the website. On the site, there was no indication of what all files I downloaded, so I was completely in the blue. I could go in Ctrl+C each item, then Ctrl+V into the file manager search bar, but that would be tedious to repeat that 500 times.
Now, what I want to do: I wanted to go ahead and take all of the file names from the website (The file name that I downloaded and the file name that was in my drive are the same), put them all in a simple .txt document or something (The website has multiple unwanted text alongside the text I need, such as:
. If this is not possible to extract the text from the site like this, then I am ok with manually entering the names via copy paste). Then I want the computer to take these values in the document and then search for it in a specific folder path (Note: the actual files are in subfolders within the root folder I want to choose, so the program has to be able to search within multiple folders of the root). Then I want the computer to know if the value in the document, is present as a file. If the file doesn't exist, then I want that value/those values in the document to be displayed as the output. I want this cycle to repeat until all the values have been gone through. The output should list the values that were not present.
Conclusion: You probably now get at what I am trying to do, if you don't, tell me what I need to elaborate on. I really don't care how this program is made (what language or software), I just want something that works... but myself don't know how to create.
Thanks for reading and any response is appreciated!
Dhanwanth P :)
Here's a solution in Python in case you would like to explore...
Similar to what you described, all files from the website are listed in an Excel file 'website_files.xlsx'
And all files are saved in a folder 'downloaded_wav'. The script will work regardless the files are saved in the root directory or sub-folders.
Then I run below Python script to look for the missing file:
import pandas as pd
import os
path_folder = 'C:\\Users\\Admin\\Downloads\\downloaded_wav'
downloaded_files = []
d,m = 0,0
for path_name, subfolders, files in os.walk(path_folder): #include all subfolders
for file in files:
d+=1
downloaded_files.append(file)
df = pd.read_excel('website_files.xlsx')
for file in df.values:
if file not in downloaded_files:
print('MISSING', file)
m+=1
print(len(df), 'files on website')
print(d, 'files downloaded')
print(m, 'missing file(s) found')
Output:
MISSING ['OLIVER_snare_disco_mixready_hybrid.wav']
3 files on website
2 files downloaded
1 missing file(s) found
No worries; I found a solution by myself using Excel (God, it's powerful!).
Basically, I copied and pasted my values from the website, then used a filter to show the values only with .wav. Then I used a Power Query from the folder to get me a list of all names of files in a folder. Finally, I went ahead and compared the two using a formula:
=IF(COUNTIF(B:B,D,"OK","MISSING")
If you need more elaboration, I'd be happy to help, just reply to this. There might be an easier way, but I personally liked the straight-forwardness of this. You only need Microsoft excel!
EDIT:
For me, I used these two videos which go over the power query and countif function:
How to Get the List of File Names in a Folder in Excel (without VBA): https://www.youtube.com/watch?v=OSCPVBWOqwc
How to Compare Two Excel Sheets (and find the differences): https://www.youtube.com/watch?v=8Ou_wfzcKKk
In my case, I made my sheet look like this:
When you open an XCode project it can automatically write to the enclosing folder of the respective .xcodeproj file.
In a sandboxed application you can only write to files that are opened, or write to directories that have been opened with NSOpenPanel.
What I'm trying to achieve is the same functionality as XCode ; my app makes a project file (a document much like an .xcodeproj file) that is saved to a user-selected directory, and within that directory other files are created relating to that project file. However, if the file is re-opened after terminating the app, I end up losing permission to write to the enclosing directory.
I see bookmarks are an option but they do not provide the same functionality. If the project file is moved to a new directory it makes no sense to keep writing to the old directory, and I'd have to ask the user for permission to write to the new directory. I don't find this user-friendly. Is there absolutely no way to resolve this problem?
If the project file is moved to a new directory it makes no sense to keep writing to the old directory, and I'd have to ask the user for permission to write to the new directory. I don't find this user-friendly. Is there absolutely no way to resolve this problem?
Unfortunately for you this is Apple's sandbox model and you need to adapt to it. The process you describe is a good way to handle your situation - when you first create a project file ask the user to select the folder to store it and save a bookmark to that folder, when an existing project file is opened check whether you have a saved bookmark for its parent folder and if not put up a dialog explaining the file has been moved and ask the user for permission to use the new parent folder and keep a bookmark to it.
Users are used to these dialogs from apps, the sandbox has been around a long time. You might find keeping a number of saved bookmarks and optimising your collection will improve your users experience. E.g. remember that a bookmark to a folder grants access to all the files and folders within it, and the files/folders within those folders, etc. This means if a user reorganises by moving projects into sub folders may not require you to ask for a new bookmark, and similarly when a new bookmark is acquired any existing ones you have stored to folders contained by the new bookmark's folder are redundant and can be removed from your collection of stored bookmarks.
Not the answer you really wanted, but hope it helps!
I've done some searching, and I can't quite find a definitive yes or no answer anywhere.
I'm writing a program that will, when you press a button in Excel, go to outlook, scan it for particular e-mails, then download the attachments in a certain way. Ok, very doable, lots of guides out there how to do it.
What I can't find is if it's doable on a variable folder structure. As in, everyone who's going to use this program has their outlook folders set up in a different way. Is there a way to be able to find the emails I want wherever they're hiding, without creating a unique path per person who might use this program, and without making every person who might use this email set up their inbox in the same way?
The email name will be the same every day, with a date appended, which is how I plan to find the email in the first place.
If the folders you're looking for all have something in common, you might be able to use a For Each loop and a conditional:
For each folder in myFolder.Folders
If folder.Name = "Surprise Party" then
'Run code
End If
Next folder
Looping through a dynamic number of folders to find a specific item is not the best option performance wise. A better approach is to use the AdvancedSearch method. You can specify multiple folders and include subfolders and then iterate through a single collection (.Results).
Is there any easy way to quickly search for the name of a folder in Outlook's inbox folder structure?
I am talking about this:
I have to categorize emails into this folder structure as they arrive but 99% of the time is looking for the right folder...
We are running our own Exchange and I am using Outlook over rdp
http://i.stack.imgur.com/wZDKS.png
The Outlook object model doesn't provide any property of method for that.
You need to develop a VBA macro or add-in to ge the job done. For example, you can iterate over the folders structure to find the required one. The Folders property of the Folder class returns the Folders collection that represents all the folders contained in the specified Folder. So, you may walk down to the tree recursively.
I have a folder containing many subfolders on my desktop that I need to recreate in outlook 2010. The folders are empty and I have it as a template. There is something like 400 folders so I am trying to avoid manually creating every one of them in outlook.
The issue I have is that these folders aren't being put under my inbox, they are going to be created under a common mailbox accessible by my coworkers. We are using this for archiving purposes. Most of the codes I have found are for creating folders under your inbox.
How would I go about recreating the directory under this public mailbox? I have very little experience in VBA programming. I also have all the folder names in excel if that makes it any easier to accomplish this.
Thanks in advance for any help.
Well, I'd suggest starting from the Getting Started with VBA in Outlook 2010 article in MSDN to learn the basics. From the Outlook object model there is no difference where the folder is located. The Add method of the Folders class creates a new folder in the Folders collection.
You may use the Stores property of the Namespace class which returns a Stores collection object that represents all the Store objects in the current profile. Also the GetSharedDefaultFolder method of the Namespace class returns a Folder object that represents the specified default folder for the specified user.