我有电子表格,上面有学生姓名,年龄和考试成绩。 我想循环通过已从最低到最高排序的第4列(学生年龄)。 循环记录了单元格“D1”中第一个也是最年轻的学生的年龄,但我希望它在学生的年龄比“D1”中的学生年龄大4岁的单元格上时停止循环,例如: 11(单元格“D1”) 11 11 12 12 13 14 15(因为这个学生比单元格“D1”大4岁,我想要它返回“D6”。
然后我想用“D6”(或任何细胞参考将会是)作为初始起点重复这个过程,并在学生年龄超过4岁时将细胞击中细胞时返回细胞。
这是我已经做过的事情。我真的很陌生,所以让我提前道歉!任何帮助都会受到赞赏,因为我真的被卡住了。
function myFunction() {
var app = SpreadsheetApp;
var activeSheet = app.getActiveSpreadsheet().getActiveSheet();
var firstAge = activeSheet.getRange("D1").getValue()
var lastRow = activeSheet.getLastRow();
for(var i=1;i<lastrow+1;i++){
var column4 = activeSheet.getRange(i, 4).getValue();
if (column4 === firstAge + 4) {
activeSheet.getRange().getRowIndex(column4);
答案 0 :(得分:0)
function my4Loop()
{
var ss=SpreadsheetApp.getActive();
var sh=ss.getActiveSheet();
var rg=sh.getDataRange();
var vA=rg.getValues();
var oA=[];
var age1=vA[0][3];
for(var i=1;i<vA.length;i++)
{
if(vA[i][3]-age1>=4)
{
var a1=sh.getRange(i+1,4);
oA.push(a1.getA1Notation());
age1=vA[i][3];
a1.setBackground('#ffff00');//Mark the wiener
}
}
Logger.log(oA);
return oA;
}
答案 1 :(得分:0)
这可能对您有用:
function getCells(){
var ss = SpreadsheetApp.getActive();
var sheet = ss.getSheetByName(YOUR_SHEET_NAME);
var targetColumn = "D";
var values = sheet.getRange(targetColumn + "1:" + targetColumn + sheet.getLastRow())
.getValues();
var cursorAt = values[0];
var result = [];
values.forEach(function(item, index){
if (item[0] - cursorAt == 4) {
cursorAt = item[0];
result.push("D" + (index + 1));
}
});
return result;
}
答案 2 :(得分:0)
import React from 'react';
import { MapView } from 'expo';
import db from '../db';
import { createRouter, NavigationProvider, StackNavigation } from '@expo/ex-navigation';
import selectedPhototag from '../screens/selectedPhototag';
import { StackNavigator, NavigationActions } from 'react-navigation';
const nav = StackNavigator({
phototag: {
screen: selectedPhototag,
},
});
export default class MapScreen extends React.Component {
state = {
markers: [],
};
componentWillMount() {
db.child('phototags').once('value').then(photoTags => {
let dataArray = [];
for (var key in photoTags.val()) {
dataArray.push(photoTags.val()[key]);
}
this.setState({ markers: dataArray }, () => {
// console.log('[MapScreen] data', this.state.markers);
});
});
}
goTophototags() {
NavigationActions.navigate({ routeName: nav.phototag });
}
render() {
return (
<MapView
provider={MapView.PROVIDER_GOOGLE}
style={{ flex: 1 }}
initialRegion={{
latitude: 40.750355960509054,
longitude: -73.97669815393424,
latitudeDelta: 0.0922,
longitudeDelta: 0.0421,
}}>
{this.state.markers.map((marker, i) =>
<MapView.Marker
key={i}
coordinate={{
latitude: marker.locationLat,
longitude: marker.locationLong,
}}
title={marker.description}
onPress={this.goTophototags}
/>
)}
</MapView>
);
}
}