Private Sub Workbook_Open()
****'** MsgBox Environ("ComputerName")
****If Environ("ComputerName") UCase("Authorized PC Name") Then
********MsgBox "Sorry No Go!" & vbCrLf & "Wrong computer!"
********End
****Else
********'** Do your thing here
********MsgBox "Proceed"
****End If
End Sub
Reading the thread in the link above, It seems as if one could limit access to a workbook. I tried this code on a dummy workbook, I have a few question...
1. Why am I getting "Sorry, No Go. Wrong Computer" when I just put the code in the dummy worksheet for the first time?
2. Can this code be modified to capture my clients computer information to restrict the workbook useage only on one computer and prevent unauthorized distribution to other computers?
3. Can this code run automatically everytime the workbook is open?
I have a worksheet that sometimes needs to be edited. In order for me to copy and paste I have to "comment block" the Workbook change and the Worksheet change event macros. Make my copy and paste then I have to "Uncomment block". I do this manually. Is there a way to create a macro to do this? Or is there an easy way to do what I am trying to accomplish.
I understand that security in Excel is not very robust, but the users I intend to distribute a workbook to are not very sophisticated
Are there any system properties that are accessible to Excel/VBA and are unique to a computer that could be encoded in a hidden/protected cell, so the workbook would be frozen if copied to another computer?
Eg the user emails me that property which I enter in the check cell, and upon opening the workbook the check cell is compared to the system property, locking it up if the check fails?
I have hidden columns on a sheet. I protect the sheet with a password before I send out the file to a 3rd party. However, it seems that all a user has to do is select the sheet cells, copy and paste onto another sheet or file. The protection is nonexistant and the user is able to unhide the columns.
Am I missing something? Is there a way to "really" protect a sheet so that a user is unable to unhide confidiential columns? Preferably a method without VBA code.
I have the following code from a form. It works just fine copying named ranges from one sheet to another. The probloem now is that I don't want to copy the characteristic of the formating or whether they are protected or not. The originating spreadsheets have cells that are protected. I am trying to copy those values over to the new sheet and paste their values or formulas but not their formatting (background color) or the fact that some of the cells are 'locked'. I want the new sheet to have the values and formulas but not the be lock for the user. Is this possible with the current way I do the code or do I have to rewrite it? How would you approach this?
Private Sub CommandButton1_Click()
Import_Data_Form.Hide
Run "NPA"
Set b = Selection ad = b.Address
' Local Variables Dim wkbDataFile As Workbook
' Let user select source datafile Call UserSelectFile_WOpen(wkbDataFile) If wkbDataFile Is Nothing Then MsgBox "User did not select a workbook to open" Exit Sub End If
Application. ScreenUpdating = False Set wb = ThisWorkbook
So I have this code I'm working on for my deptarment that goes to a website inputs data , clicks run and downloads the csv file to the worksheet. It works just fine on my PC and on my profile on the computers the other department uses. We are both using same versions of windows, excel , and IE. When i have someone from the other department run the macro it opens the website but never enters the data into the fields despite the site being the exact same coding as when i'm logged in.
[Code].....
When this code is ran by a member of the other department it just opens the website inputs nothing and doesn't press the RUN button on the website.
What setting or anything. I verified that both PC's VBA references in are there and no "Locations are missing paths" .
I bought 32 laptops out of my own moeny (used) to get my 5th grade students into the 21st century. I have several programs working on these laptops which output data in text and xls files. I would like to either:
1. Poll the files on each workstation at the end of the day and bring the data into excel (I have worked in VBA). Computers are named Comp01 to Comp33.
2. Better: have the workstations save the files to my NAS device so they are on one hard drive.
I would like to keep it simple (I'm a teacher not a good programmer.) Is the "Import External Data" the way to go for the text files? Can a macro go out and loop through the 32 laptops using that or some other add-in?
I have been limited lately to only working on this project at work because I have added a few lines here and there throughout the workbook that make a reference to the directory the file is located in. for example:
I have a timesheet I created in Excel. I want to hit a button and have it save on the current computer. I also want it to copy the file to another computer on our network. I would like it to overwrite the exsisting file on this other computer automatically without a message saying "Do you want to overwrite exsisting file". The other computers dir is \OfficeTimesheet
Private Sub Worksheet_Calculate() frm_document.Show End Sub
A userform is called up upon a calculation change in the spreadsheet on two computers and has for years. We just hired a new employee and the userform is not pulling up for her. Instead she gets an error: Runtime error 75...Could not find the specified object.
I've created a userform that will be used by multiple users. I'm not finished coding it yet but when I tried to work on it on my computer at home it did not look the same as it did at work. I tried it on several other computers and experienced the same problem.
It appears that the inserted company logo is zoomed in and the some of the label text has wrapped and is not visible.
I've attached a screen shot of the form on my work computer and the way it looks on other computers.
I have a workbook with sensitive company information. I need a way to validate the computer the workbook is being opened on and then close the workbook if it is not a confirmed workstation.
The file is already password protected on opening, each worksheet and the workbook is protected, and the VBA code is protected. We just need to take it one step further.
Is there a way to check a registry entry or the computers MAC address on workbook_open?
I have found code to close the workbook without saving which I would use after a message box stating "You do not have permission to access this file."
If someone has their macro security level set to high or very high, that prevents my code from running. How can I make this work on any computer no matter what their macro settings are?
I currently have a worksheet opened on excel 2010 using windows XP. When I open the exact same file on another computer using excel 2010 using windows 7. The spacing and formatting is different.
Running excel 2002, windows vista (some machines on network are running xp). I have a spreadsheet that I want to be able to edit from all computers on the network so that it shows real time changes on all PC's.
It would be like using google docs, I can't use google docs because my file size is 2.5MB and it is too much for it.
Is there a formula or VBA script available which, when executed, will find the IP address of the computer on which the code / formula is run (obviously - through Excel)?
I have a workbook with macros that run on my laptop, but when I email the workbook to another user and the macro is executed I get a subscript out of range message? Both Excel versions are the same. Environments are the same.?
I have a problem i have written an excel macro in VBA and it is working on some computer but on the others it is not working. It says "compile error in hidden module"
I have designed an excel spread sheet for my staff to fill in when completing care plans - there are a lot of drop down boxes etc., on the form - when it comes to printing 3 computers on the office print it fine but the other 3 the margins seem to move and the sheets come out totally wrong - I have checked the setting and we are all using the same setting etc., but it is still happening - we are also all printing to the same printer.
I have a technician who sits a desk over, has the same brand of computer running the same Windows 7 and the same Excel 2010, but when he opens a particular file the page layout or print area seems to change so that the sheet is partially cut off. All his options appear the same. I can open this file on other computers and it seems to be fine...
I notice that the Margins under Custom Margins are different and this would explain the problem but not why it occurs. It's a file I created and saved and he opened. Why would the margins change? Is this one of the Microsoft cross platform / program deals where if he changes the print set-up or page layout in WORD for example, it changes them in EXCEL?
Is it possible to protect an excel file such that it will open up only on designated computers (identified by the computer name or some unique hardware identification like MAC address etc)?I was wondering if the VB editor can be used to do the same.
Let me put my requirement in detail:
I have an excel file "123" created in one computer (named=A). On this computer this file can be opened by anyone.I write a code such a way that, this particular file when copied on to other computers say (B,C & D) would open up as usual. But on computer E or any other computer, it should not open.
I cannot use password protect feature on the file as "n" number of users will be accessing this file on those designated computers. I was finding few of the clients copying the files on their personal drives or email without proper consent.If its possible, I would like to employ the same on few of my word (.doc) files as well.
I've been tasked with writing an excel spreadsheet that will compare A directory from a "Master directory" against another networked computer directory...
Master Directory R_PC1 R_PC2 R_PC3
[Code]....
So what were trying to do is have the table show us which pc has a file that either
1) Does not show up on the master 2) Matches the master file name but the file size is different 3) Matches the master file name but the time stamp is different (Show if its Newer or Older) 4) Shows up on the master but does not show up on the remote.
The amount of rows will be between 3000 and 5000 .
I am creating time sheet application , obviously i need to store the time when the user logs & logs out .. The issue is, the user can "Cheat" by changing the system time ...
Any alternatives?? Is it possible to store the time from a particular server etc or some other source.
Found code to find files and return results.. edited to my liking(barely.. i have no VBA knowledge).. it works on the PC I use. This is intended to be on a shared folder across a network for others to use, and it is not returning any results on the other PCs. This computer has Office 2003.. the rest have 2000. I can NOT figure out the problem. I have read in searches that Application.Filesearch is not reliable, but I do not know how to change it to any other type of coding Attachment 26214
Option Explicit
Sub SrchForMSDS() Dim i As Long, z As Long, Rw As Long Dim ws As Worksheet Dim y As Variant Dim Fil As String, FPath As String y = Application.InputBox("Search for file(s) named:", "MSDS Search") If y = False And Not TypeName(y) = "String" Then Exit Sub Application. ScreenUpdating = False With Application.FileSearch .NewSearch .LookIn = "\My-SbscompanyMSDS Database" ' \#.#.#.#companyMSDS Databse or My-Sbs .SearchSubFolders = True .Filename = y................
programPath = "C:Program FilesInternet Exploreriexplore.exe" ' works 'programPath = "iexplore.exe" ' does not work Shell programPath + " " + fileToLaunch, vbNormalFocus
but the drawback is that the invoked program (iexplore.exe, at least in my case) needs to have the FULL PATH to where the program exists = the "C:Program FilesInternet Explorer" which may or may not work on someone elses computer. This hardcoding will not work and is not transportable.
Is there a trick to find where the executing program lives? or launching it without the path?
Scenario: Two computers running Windows 7 (64-bit Professional) with Excel 2007, same processor, same hard drive, same memory, same everything except the monitors - see below
Computer 1: HP LA2006x monitor (20" viewable diagonal) @ 1600x900 resolution, 91.79 PPI Computer 2: HP LA2206x monitor (21.5" viewable diagonal) @ 1920x1080 resolution, 102.46 PPI
We have an Excel spreadsheet that the column widths on columns A through K must equal exactly 6, 1, 6, 1, 8, 1, 13, 2, 8, 1, and 35 respectively in order for the data to be imported into another program. These exact column widths are set on Computer 1 and the .xslx file is saved to a network location.
Computer 2 opens the .xslx file from the exact same network location. The column widths display as 5.86, 0.92, 5.86, 0.92, 12.84; not the exact columns listed above. So if anyone needs to export the data from Computer 2, they have to manually adjust the column widths or run a macro to auto adjust the column widths.
My question, is there anything I can do on Computer 1 or Computer 2 to make it so the column widths are saved and open correctly no matter which one is saving and which one is opening? The 20" monitor on computer 1 cannot display the 1920x1080 resolution... already tried that.
I get a "Run-time error '9': subscript out of range" error when calling a userform. The code opens a reference spreadsheet then shows a userform with a combobox and two command buttons (Continue and Quit). The userform has a private initialization sub-routine to populate the combobox with values from a list on the reference spreadsheet. When the userform is called the error comes up.
Here's my problem: The code was written on my computer and saved as an Add-in. The add-in has since been installed on a number of other computers and works properly. Recently I tried to run the code and this error started popping up, don't know what changed. All versions of Excel are the same and haven't changed.
BRF = ActiveWorkbook.Name If BRF = "Blank upload.xls" Then Workbooks.Open path & "QC Data AnalysisQCDA ref.XLS" OtherBRF.Show Workbooks("QCDA ref").Close SaveChanges:=False Goto 1 End If
I have a macro that copies the contents of a cell, and pastes it into the the first blank cell of a range. Its important that the entire sheet is protected, but the macro won't allow the paste function because of the protection.
Is there a VBA code to unprotect the sheet, run the copy/paste macro, then protect the sheet again. THe problem is I would prefer the protection to use a password, as I don't want the user to simply unprotect the sheet from the menu bar.
Sub Macro2() Cells.Select Selection.Locked = True Selection.FormulaHidden = False Range(Range("A" & Rows.Count).End(xlUp).Row & "A300").Select Selection.Locked = False Selection.FormulaHidden = False Range("AE11:AG300").Select Selection.Locked = False Selection.FormulaHidden = False End Sub
I want to be able to unlock all cells after the last cell that has data in column A down to row 300. Also need to unlock cells AE11:AG300. What's wrong with my code?