Permissions issues with publishing Google Sheets worksheets on Google Sites - google-sheets

I have a Google spreadsheet comprising of several worksheets and I am trying to publish the worksheets individually on separate webpages, preferably using embed. This is to provide access to users within a Google Workspace domain. The first published worksheet works fine and is duly visible to users allowed to view the Google Sites webpage. Subsequent worksheets are also published successfully but the previously published worksheets are no longer accessible. I get the following message:
"*You need permission to access this published document.
You are signed in as #.org.uk, but you don't have permission to access this published document. You may need to sign in as a different user. "
The above email address is an editor of the spreadsheet as well as being able to edit/view the Google Sites. I have tried everything by only using Incognito windows only, logging out of all accounts, checked settings, etc: I am always unable to publish more than one worksheet from the same spreadsheet at a time.
What am I doing wrong???
PS-1:
Following iansedan suggestion I have anonymised and simplified the spreadsheet. There are 2 tabs I want to publish to web: Group T and Group S.
I publish Group T to the web: works as expected in the browser (Chrome).
I publish Group S to the web and view it in another tab in the browser (Chrome)
It duly shows the published version of Group S but when I click on the other tab (to view the Group T which was OK before) I get the following message:
"You need permission to access this published document.
You are signed in as [my workspace email address], but you don't have permission to access this published document. You may need to sign in as a different user."
This is the link to the spreadsheet. I'm afraid I don't know how to share this better, the only way I could find is if you try to access the spreadsheet I will get a notification and will add your email address so you can view/edit it.
PS-2 Additional info
The respective links for the published are as follows:
Group T This one comes up with the "You need permission to access this published document." message
Group S This one shows the published worksheet correctly (as it was the last published!).
It looks like a caching mechanism somewhere is causing the issue but I have no idea where and how to prevent it! I've cleared the cache in the browser...

To publish individual sheets of a spreadsheet, use the Published Content and Settings button instead of the Publish button.
Uncheck the All Document checkbox and select the Group T and Group S sheets. After that click Escape and Start Publishing.

I had the same problem.
What youre doing is pausing one publication to start another one. Then, the first one is canceled.
Basically, there are two fields on the web publishing tab: one above another.
On the upper one, you chosse wich part of your sheet you will publish. That is, here if Jonh need to see "X", you select "X" and take note of the link to send to John.
On the lower one, you confirm all parts of the sheet that are being published at til that time. In other words, there will be more than one part in this fild. That is, if you havd alredy done the process to John (X), Anna (Y) and Floyd (Z), you will visualize X, Y and Z
Got it?

Related

How can I link to Google Sheet from Google Form? (Exploring Make a Copy feature, but I need it to be shared with the original owner)

I'm posting here because I'm hoping someone can help me edit the link to a google sheet. I haven't been able to find the answer online, but I'm hoping maybe someone understands how the link works better than I and can give me an answer.
I've been tasked with updating the application for funding (from a non-profit) to include a budget category. The application is in Google Forms, but there's no way to insert a table into the form for an applicant to fill out. I created the budget outline in a Google Sheet, but now I'm trying to find the best solution to create an individual link within the form that will lead them to the budget document. Essentially, I'm hoping the applicant can fill out the form, and when they reach the section about their budget, I want them to click the link to the google sheet, have it make a copy, but have the copy be shared with the organization's google account so we can see it when they submit their application.
I've experiment with the forced copy feature (editing the shared link by google), but when I test it from a different google account than the owner, it tells me I have to request permission. The share settings are set to allow anyone with the link to access, so I don't understand why it's asking me to request permission when I open the force copy link. This isn't going to work because the applicants need to access it when applying, and we can't have them waiting for us to accept the request every time.
I'm sure there could be a few solutions, so I'm open to any advice. The only other solution I can possibly think of is creating individual links for each applicant, if there's a way to automate that?
I recognize there could be a solution where I ask the applicant to download the file and re-upload, or share it themselves, but our applicants are not native english speakers and they are often non very comfortable with technology, so I want to automate the process as much as possible.
To summarize: The applicant should be able to
Fill out the google form
Receive an individual copy of the budget document (from google sheets) to fill out.
The budget document must be shared with the original owner so we can see it and see how it relates to the rest of their application.
Thank you for your consideration!
A solution for your use-case would be to make use of Apps Script.
Apps Script is a powerful development platform which can be used to build web apps and automate tasks. What makes it special is the fact that it is easy to use and to create applications that integrate with G Suite.
Taking this into account, you can create a script which will create a copy of the document whenever a new form submission is made and add the permissions needed for the user. Essentially, you will be the one owning the copy of the sheet as well and the candidates will have edit permissions.
Therefore, the script will end up looking something similar to this:
Code
function onFormSubmit() {
let sheetId = 'ORIGINAL_SPREADSHEET_ID';
let form = FormApp.getActiveForm();
let responses = form.getResponses();
let n = responses.length;
let currentUser = form.getResponse(responses[n-1].getId()).getRespondentEmail();
let newSpreadsheet = SpreadsheetApp.openById(sheetId).copy("Sheet copy for " + currentUser);
let newSpreadsheetId = newSpreadsheet.getId();
DriveApp.getFileById(newSpreadsheetId).addEditor(currentUser);
}
Explanation
The above snippet makes use of the Apps Script's onFormSubmit installable trigger. Basically, whenever a new form submission is sent, the code above will run. The code will retrieve the last response which was submitted and get the user's email address by making use of the getRespondentEmail method. Afterwards, a copy of the original spreadsheet will get created and shared with the editor permission with the user who just submitted the form. Adding the permission is done by making use of the addEditor method from the DriveApp parent class. As for the user accessing the copy of the spreadsheet, this is easily done as the user will end up receiving an email telling them that a spreadsheet has been shared with them.
Setup
You will have to have the Collect emails option checked for the form;
Open the three dots icon and click on Script Editor;
Once you open the script editor, input the code from above and do not forget to modify the sheetId such that it matches the id of your original spreadsheet that you want to share.
Install the onFormSubmit trigger by going to the Triggers page and create a new trigger with the following options:
Send the URL form to the candidates and wait for submission to be sent.
Reference
Google Apps Script;
Apps Script Installable Triggers;
Apps Script SpreadsheetApp Class;
Apps Script FormApp Class;
Apps Script DriveApp Class.

data entry form in google sheet for multiple users not working when accessed simultaneously

I've created form in google sheet, so that multiple users can add data, modify & delete.
However, it is not working properly when multiple users are working on it simultaneously.
For an example, two people are working on the sheet. User A and User B. If user A is typing something user B is also able to see and user B will be able to enter the detail, but it will change the details which are being entered by user A. Technically same sheet is opened for both the users and details keeps on changing what users are changing.
Ideally, if user A is entering some details user B should not be able to see it and form should be blank or unique for user B, so that both the data won't clash. I want it to be like the way google form is there wherein form will be blank when any user is opening it. (I have tried google form for my work, but as there are too many drop downs google form takes time to load and work gets slow that the reason I am trying to find the option in google sheet).
google sheet link
Above is the google sheet which you can open and check the form and coding. Also, please test it with a different id to test for multiple users.
Let me know if there is any workaround for this. Also, let me know if you need any other details.
Answer:
This just isn't possible. Sheets is meant to be a collaborative tool; what's edited by one person will always show up for others. You need to use a different tool, for example like a Google form for data entry, but having data not being edited in other open versions is just not workaroundable.

How to turn off Version History in Google Sheets

I have developed a tool to be used by customers based on Google Sheets. The document contains a number of sheets/tab, half of which are for customer use and the other half protected and only to be accessed by the owner.
The protected tabs contain sensitive information from a central database and shouldn't be viewed by anyone else other than the sheet owner (me).
It seems that protecting these sheets has been working as intended until one customer noticed today that if he clicks the Version History, it displays all changes made and opens all the protected sheets!! This seems like quite a major loophole to the sheet protection feature...
Does anyone know how to turn off Version History so link just right of 'Help' in the task bar doesn't appear at all?
I found this, but that doesn't seem to make any difference. In the 'Turn off view history for one file' instructions, I don't have 'Tools > Activity dashboard privacy' And for the 'Turn off view history for all file' instructions, it doesn't remove the version history links right of 'Help' so customers can still access the history and therefore the protected files.
If someone can advise here, that would be appreciated.
You can NOT.
Not unless you have a work or school account as clarified in your mentioned link
Some Docs features are only available for work or school accounts, and
you’re signed in to a personal account: xxxxxx#gmail.com.
To sign in to your work or school account, click here.
Also further down:
If you don’t see Activity dashboard or the privacy settings:
If the file isn’t owned by a Google Account through work or school, no
one can see the view history. You haven't viewed a shared file owned
by a work or school organization. You may be signed in to the wrong
account. You’re signed in to your personal account: xxxxxx#gmail.com.

Sharing a created Google form with linked sheet for others to use

I have created several systems with Google Forms (and linked sheets) to log services provided and timekeeping. I would like to share these systems with other people to use as a template for their own data. Is there a way to easily do this keeping my formula's intact?
Successfully: I have found a way to share the form only as a template by copying the URL into an emailed hyperlink changing the ending from edit to copy.
Cumbersome but ok Migrant Service Log: This method does not seem to work entirely for spreadsheets. It still asks me to give them access to the original document. I can set access on the original to view only and limit the time to one day.
Unsuccessful Clock In/Out: The new "copy" of the spreadsheet is not automatically linked with new "copy" of the Forms so it does not update when a new response is added. I must link it in form. This becomes more of an issue with my sheets that have formulas based on these responses. It is now necessary for each new user to manually link and rename the sheets to make them function correctly.
Clock In/Out System (attendance purposes)
Clock In Form
Clock Out Form
MSA Sheet
Attendance Office Sheet
Migrant Service Log (team communication purposes)
Migrant Service Log Form
Migrant Service Log Sheet
I would like for them to all be user-friendly and easily shared while keeping everything confidential to the user.
if you want to keep your formulas as a secret you can set up the 2nd spreadsheet and use IMPORTRANGE formula to get data over and then just simply link the 2nd spreadsheet somewhere on the end of the form.

How to restrict SharePoint 2007 from resolving the disabled AD users?

I have been working on Selective Content Migration using "SharePoint Content Deployment Wizard" from CodePlex for a particular SPList.
The migrated data is displayed in a Custom List in SP2007, in which 2 fields Preparers & Approvers (columns) are of "People & Group" data type. These two columns displays the "Name (with Presence)" of People & Group type and I am able to click the user names to open the user details for all active AD users.
How ever, some of the users are disabled in Active Directory and we are unable to populate them in SharePoint. Due to which, they are not visible in the mentioned columns. Is there a way to restrict SharePoint from resolving the inactive / disabled AD users and continue to display them in the Preparers & Approvers column?
Also what is the option to display their Name (like Sriram Bala) in a seperate column for those who are inactive in AD? Meaning, those who are disabled in AD, their name without hyper link alone should be displayed in another column say Preparer Name or something like that. I tried to use Single Line Text datatype to get the People & Group value, but it didn't work.
Please suggest the possible option to achieve this.
Thanks,
Sriram
In SharePoint Central Admin (for 2007 select the appropriate SSP), you can fine tune the LDAP connection to omit different user values from the AD Sync process.
Look to add something along the lines of:
userAccountControl:1.2.840.113556.1.4.803:=0
to your LDAP filter.

Resources